Mercurial > hg > nginx-quic
annotate auto/os/win32 @ 7983:39501ce97e29
gRPC: generate error when response size is wrong.
As long as the "Content-Length" header is given, we now make sure
it exactly matches the size of the response. If it doesn't,
the response is considered malformed and must not be forwarded
(https://tools.ietf.org/html/rfc7540#section-8.1.2.6). While it
is not really possible to "not forward" the response which is already
being forwarded, we generate an error instead, which is the closest
equivalent.
Previous behaviour was to pass everything to the client, but this
seems to be suboptimal and causes issues (ticket #1695). Also this
directly contradicts HTTP/2 specification requirements.
Note that the new behaviour for the gRPC proxy is more strict than that
applied in other variants of proxying. This is intentional, as HTTP/2
specification requires us to do so, while in other types of proxying
malformed responses from backends are well known and historically
tolerated.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 06 Jul 2020 18:36:25 +0300 |
parents | c9235164bbf1 |
children |
rev | line source |
---|---|
455 | 1 |
2 # Copyright (C) Igor Sysoev | |
4412 | 3 # Copyright (C) Nginx, Inc. |
455 | 4 |
5 | |
509 | 6 have=NGX_WIN32 . auto/have_headers |
455 | 7 |
8 CORE_INCS="$WIN32_INCS" | |
9 CORE_DEPS="$WIN32_DEPS" | |
10 CORE_SRCS="$WIN32_SRCS $IOCP_SRCS" | |
11 OS_CONFIG="$WIN32_CONFIG" | |
461 | 12 NGX_ICONS="$NGX_WIN32_ICONS" |
2813
c00763aa5e1b
divide select module into two modules: Unix and Win32 ones
Igor Sysoev <igor@sysoev.ru>
parents:
2731
diff
changeset
|
13 SELECT_SRCS=$WIN32_SELECT_SRCS |
7444
4089b3d2cb59
Win32: added WSAPoll() support.
Maxim Dounin <mdounin@mdounin.ru>
parents:
7443
diff
changeset
|
14 POLL_SRCS=$WIN32_POLL_SRCS |
455 | 15 |
6383 | 16 ngx_pic_opt= |
7031
b7b7f3a0cc28
Configure: use .exe for binaries for all win32 compilers.
Orgad Shaneh <orgads@gmail.com>
parents:
6724
diff
changeset
|
17 ngx_binext=".exe" |
6383 | 18 |
5360
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
19 case "$NGX_CC_NAME" in |
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
20 |
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
21 gcc) |
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
22 CORE_LIBS="$CORE_LIBS -ladvapi32 -lws2_32" |
6383 | 23 MAIN_LINK="$MAIN_LINK -Wl,--export-all-symbols" |
24 MAIN_LINK="$MAIN_LINK -Wl,--out-implib=$NGX_OBJS/libnginx.a" | |
25 MODULE_LINK="-shared -L $NGX_OBJS -lnginx" | |
5360
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
26 ;; |
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
27 |
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
28 *) |
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
29 CORE_LIBS="$CORE_LIBS advapi32.lib ws2_32.lib" |
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
30 ;; |
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
31 |
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
32 esac |
3d2d3e1cf427
Win32: MinGW GCC compatibility.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
33 |
455 | 34 EVENT_MODULES="$EVENT_MODULES $IOCP_MODULE" |
7445
c9235164bbf1
Win32: enabled both select and poll on Windows by default.
Maxim Dounin <mdounin@mdounin.ru>
parents:
7444
diff
changeset
|
35 #EVENT_FOUND=YES |
455 | 36 |
6724
a6d116645c51
Configure: removed the --with-ipv6 option.
Maxim Dounin <mdounin@mdounin.ru>
parents:
6383
diff
changeset
|
37 have=NGX_HAVE_INET6 . auto/have |
2814 | 38 |
469 | 39 have=NGX_HAVE_IOCP . auto/have |