Mercurial > hg > nginx-quic
view auto/cc/icc @ 7981:bffcc5af1d72
Upstream: drop extra data sent by upstream.
Previous behaviour was to pass everything to the client, but this
seems to be suboptimal and causes issues (ticket #1695). Fix is to
drop extra data instead, as it naturally happens in most clients.
This change covers generic buffered and unbuffered filters as used
in the scgi and uwsgi modules. Appropriate input filter init
handlers are provided by the scgi and uwsgi modules to set corresponding
lengths.
Note that for responses to HEAD requests there is an exception:
we do allow any response length. This is because responses to HEAD
requests might be actual full responses, and it is up to nginx
to remove the response body. If caching is enabled, only full
responses matching the Content-Length header will be cached
(see b779728b180c).
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 06 Jul 2020 18:36:22 +0300 |
parents | 9eefb38f0005 |
children |
line wrap: on
line source
# Copyright (C) Igor Sysoev # Copyright (C) Nginx, Inc. # Intel C++ compiler 7.1, 8.0, 8.1, 9.0, 11.1 NGX_ICC_VER=`$CC -V 2>&1 | grep 'Version' 2>&1 \ | sed -e 's/^.* Version \([^ ]*\) *Build.*$/\1/'` echo " + icc version: $NGX_ICC_VER" have=NGX_COMPILER value="\"Intel C Compiler $NGX_ICC_VER\"" . auto/define # optimizations CFLAGS="$CFLAGS -O" CORE_LINK="$CORE_LINK -opt_report_file=$NGX_OBJS/opt_report_file" case $CPU in pentium) # optimize for Pentium and Athlon CPU_OPT="-march=pentium" ;; pentiumpro) # optimize for Pentium Pro, Pentium II and Pentium III CPU_OPT="-mcpu=pentiumpro -march=pentiumpro" ;; pentium4) # optimize for Pentium 4, default CPU_OPT="-march=pentium4" ;; esac CFLAGS="$CFLAGS $CPU_OPT" if [ ".$PCRE_OPT" = "." ]; then PCRE_OPT="-O $CPU_OPT" fi if [ ".$ZLIB_OPT" = "." ]; then ZLIB_OPT="-O $CPU_OPT" fi # warnings CFLAGS="$CFLAGS -w2" # disable some warnings # invalid type conversion: "int" to "char *" CFLAGS="$CFLAGS -wd171" # argument is incompatible with corresponding format string conversion CFLAGS="$CFLAGS -wd181" # zero used for undefined preprocessing identifier CFLAGS="$CFLAGS -wd193" # the format string ends before this argument CFLAGS="$CFLAGS -wd268" # invalid format string conversion CFLAGS="$CFLAGS -wd269" # conversion from "long long" to "size_t" may lose significant bits CFLAGS="$CFLAGS -wd810" # parameter was never referenced CFLAGS="$CFLAGS -wd869" # attribute "unused" is only allowed in a function definition, warning on pTHX_ CFLAGS="$CFLAGS -wd1301" # STUB # enumerated type mixed with another type CFLAGS="$CFLAGS -wd188" # controlling expression is constant CFLAGS="$CFLAGS -wd279" # operands are evaluated in unspecified order CFLAGS="$CFLAGS -wd981" # external definition with no prior declaration CFLAGS="$CFLAGS -wd1418" # external declaration in primary source file CFLAGS="$CFLAGS -wd1419" case "$NGX_ICC_VER" in 9.*) # "cc" clobber ignored, warnings for Linux's htonl()/htons() CFLAGS="$CFLAGS -wd1469" # explicit conversion of a 64-bit integral type to a smaller # integral type CFLAGS="$CFLAGS -wd1683" # conversion from pointer to same-sized integral type, # warning on offsetof() CFLAGS="$CFLAGS -wd1684" # floating-point equality and inequality comparisons are unreliable, # warning on SvTRUE() CFLAGS="$CFLAGS -wd1572" ;; 8.*) # "cc" clobber ignored, warnings for Linux's htonl()/htons() CFLAGS="$CFLAGS -wd1469" # floating-point equality and inequality comparisons are unreliable, # warning on SvTRUE() CFLAGS="$CFLAGS -wd1572" ;; *) ;; esac # stop on warning CFLAGS="$CFLAGS -Werror" # debug CFLAGS="$CFLAGS -g"