Mercurial > hg > nginx-quic
annotate auto/cc/owc @ 8600:e9f402bfe37e
HTTP/2: fixed window updates when buffering in filters.
In the body read handler, the window was incorrectly calculated
based on the full buffer size instead of the amount of free space
in the buffer. If the request body is buffered by a filter, and
the buffer is not empty after the read event is generated by the
filter to resume request body processing, this could result in
"http2 negative window update" alerts.
Further, in the body ready handler and in ngx_http_v2_state_read_data()
the buffer wasn't cleared when the data were already written to disk,
so the client might stuck without window updates.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 06 Sep 2021 14:54:47 +0300 |
parents | b7b7f3a0cc28 |
children |
rev | line source |
---|---|
455 | 1 |
2 # Copyright (C) Igor Sysoev | |
4412 | 3 # Copyright (C) Nginx, Inc. |
455 | 4 |
5 | |
583 | 6 # Open Watcom C 1.0, 1.2, 1.3 |
455 | 7 |
8 # optimizations | |
9 | |
10 # maximize speed | |
11 CFLAGS="$CFLAGS -ot" | |
577 | 12 # reorder instructions for best pipeline usage |
455 | 13 CFLAGS="$CFLAGS -op" |
14 # inline intrinsic functions | |
15 CFLAGS="$CFLAGS -oi" | |
16 # inline expansion | |
17 CFLAGS="$CFLAGS -oe" | |
18 # disable stack checking calls | |
19 CFLAGS="$CFLAGS -s" | |
20 | |
21 case $CPU in | |
22 pentium) | |
23 # optimize for Pentium and Athlon | |
24 # register-based arguments passing conventions | |
25 CPU_OPT="-5r" | |
26 # stack-based arguments passing conventions | |
27 #CPU_OPT="-5s" | |
577 | 28 ;; |
455 | 29 |
30 pentiumpro) | |
31 # optimize for Pentium Pro, Pentium II and Pentium III | |
32 # register-based arguments passing conventions | |
33 CPU_OPT="-6r" | |
34 # stack-based arguments passing conventions | |
35 #CPU_OPT="-6s" | |
36 ;; | |
37 esac | |
38 | |
39 CFLAGS="$CFLAGS $CPU_OPT" | |
40 | |
41 | |
42 # warnings | |
43 | |
499 | 44 # maximum level |
45 CFLAGS="$CFLAGS -wx" | |
455 | 46 #CFLAGS="$CFLAGS -w3" |
47 | |
48 # stop on warning | |
49 CFLAGS="$CFLAGS -we" | |
50 | |
51 # built target is NT | |
52 CFLAGS="$CFLAGS -bt=nt" | |
53 | |
54 # multithreaded | |
55 CFLAGS="$CFLAGS -bm" | |
56 | |
57 # debug | |
58 CFLAGS="$CFLAGS -d2" | |
59 | |
60 # quiet | |
61 CFLAGS="$CFLAGS -zq" | |
62 | |
63 # Open Watcom C 1.2 | |
583 | 64 have=NGX_HAVE_C99_VARIADIC_MACROS . auto/have |
455 | 65 |
461 | 66 |
577 | 67 # the precompiled headers |
5358
670ceaba03d8
Win32: Open Watcom C compatibility fixes.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
68 #CORE_DEPS="$CORE_DEPS $NGX_OBJS/ngx_config.pch" |
670ceaba03d8
Win32: Open Watcom C compatibility fixes.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
69 #NGX_PCH="$NGX_OBJS/ngx_config.pch" |
670ceaba03d8
Win32: Open Watcom C compatibility fixes.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
70 #NGX_BUILD_PCH="-fhq=$NGX_OBJS/ngx_config.pch" |
670ceaba03d8
Win32: Open Watcom C compatibility fixes.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
71 #NGX_USE_PCH="-fh=$NGX_OBJS/ngx_config.pch" |
455 | 72 |
461 | 73 |
74 # the link flags, built target is NT GUI mode application | |
2725 | 75 #CORE_LINK="$CORE_LINK -l=nt_win" |
461 | 76 |
77 | |
78 # the resource file | |
469 | 79 NGX_RCC="wrc \$(CORE_INCS) -fo=$NGX_OBJS/nginx.res " |
80 NGX_RCC="$NGX_RCC $NGX_WIN32_RC $NGX_OBJS/nginx.exe" | |
461 | 81 |
455 | 82 |
83 ngx_include_opt="-i=" | |
84 ngx_objout="-fo" | |
85 ngx_binout="-fe=" | |
86 ngx_objext="obj" | |
87 | |
88 ngx_regex_dirsep='\\' | |
89 ngx_dirsep="\\" | |
2825
bb05c0834c8c
remove BMAKE (build make): a cc compiler should use own make
Igor Sysoev <igor@sysoev.ru>
parents:
2725
diff
changeset
|
90 |
2839
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
91 ngx_long_start=' ' |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
92 ngx_long_end=' ' |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
93 ngx_long_regex_cont=' \&\ |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
94 ' |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
95 ngx_long_cont=' & |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
96 ' |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
97 |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
98 ngx_regex_cont=' \&\ |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
99 ' |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
100 ngx_cont=' & |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
101 ' |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
102 ngx_tab=' & |
cb7739c822c6
add miltilines in OpenWatcom makefiles
Igor Sysoev <igor@sysoev.ru>
parents:
2825
diff
changeset
|
103 ' |