Mercurial > hg > nginx
annotate auto/lib/openssl/conf @ 4460:6299d1c4dbb4
Upstream: fixed "too big header" check.
If header filter postponed processing of a header by returning NGX_AGAIN
and not moved u->buffer->pos, previous check incorrectly assumed there
is additional space and did another recv() with zero-size buffer. This
resulted in "upstream prematurely closed connection" error instead
of correct "upstream sent too big header" one.
Patch by Feibo Li.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Fri, 10 Feb 2012 14:31:04 +0000 |
parents | d620f497c50f |
children | 3d2d3e1cf427 |
rev | line source |
---|---|
444
42d11f017717
nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents:
399
diff
changeset
|
1 |
42d11f017717
nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents:
399
diff
changeset
|
2 # Copyright (C) Igor Sysoev |
4412 | 3 # Copyright (C) Nginx, Inc. |
444
42d11f017717
nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright
Igor Sysoev <igor@sysoev.ru>
parents:
399
diff
changeset
|
4 |
399
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
5 |
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
6 if [ $OPENSSL != NONE ]; then |
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
7 |
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
8 case "$CC" in |
2712
41f993457021
OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
9 |
2846
dfec0e090265
fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents:
2817
diff
changeset
|
10 cl | bcc32) |
2712
41f993457021
OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
11 have=NGX_OPENSSL . auto/have |
41f993457021
OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
12 have=NGX_SSL . auto/have |
41f993457021
OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
13 |
2846
dfec0e090265
fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents:
2817
diff
changeset
|
14 CFLAGS="$CFLAGS -DNO_SYS_TYPES_H" |
2712
41f993457021
OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
15 |
2846
dfec0e090265
fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents:
2817
diff
changeset
|
16 CORE_INCS="$CORE_INCS $OPENSSL/openssl/include" |
dfec0e090265
fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents:
2817
diff
changeset
|
17 CORE_DEPS="$CORE_DEPS $OPENSSL/openssl/include/openssl/ssl.h" |
dfec0e090265
fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents:
2817
diff
changeset
|
18 CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/ssleay32.lib" |
dfec0e090265
fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents:
2817
diff
changeset
|
19 CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libeay32.lib" |
2712
41f993457021
OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
20 |
2731
06d53ecd70c8
*) move advapi32.lib to core libs since it's required for Registry and Event Log
Igor Sysoev <igor@sysoev.ru>
parents:
2712
diff
changeset
|
21 # libeay32.lib requires gdi32.lib |
06d53ecd70c8
*) move advapi32.lib to core libs since it's required for Registry and Event Log
Igor Sysoev <igor@sysoev.ru>
parents:
2712
diff
changeset
|
22 CORE_LIBS="$CORE_LIBS gdi32.lib" |
3488
92378c49456d
MSVC8 compatibility with OpenSSL 1.0.0
Igor Sysoev <igor@sysoev.ru>
parents:
3168
diff
changeset
|
23 # OpenSSL 1.0.0 requires crypt32.lib |
92378c49456d
MSVC8 compatibility with OpenSSL 1.0.0
Igor Sysoev <igor@sysoev.ru>
parents:
3168
diff
changeset
|
24 CORE_LIBS="$CORE_LIBS crypt32.lib" |
2712
41f993457021
OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
25 ;; |
41f993457021
OpenSSL building by MSVC and BCC from sources
Igor Sysoev <igor@sysoev.ru>
parents:
875
diff
changeset
|
26 |
399
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
27 *) |
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
28 have=NGX_OPENSSL . auto/have |
577 | 29 have=NGX_SSL . auto/have |
2846
dfec0e090265
fix building OpenSSL on Win32
Igor Sysoev <igor@sysoev.ru>
parents:
2817
diff
changeset
|
30 |
3168
83c940b0d18a
allow "make clean" for OpenSSL, the bug was introduced in r2874
Igor Sysoev <igor@sysoev.ru>
parents:
2893
diff
changeset
|
31 CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include" |
83c940b0d18a
allow "make clean" for OpenSSL, the bug was introduced in r2874
Igor Sysoev <igor@sysoev.ru>
parents:
2893
diff
changeset
|
32 CORE_DEPS="$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h" |
83c940b0d18a
allow "make clean" for OpenSSL, the bug was introduced in r2874
Igor Sysoev <igor@sysoev.ru>
parents:
2893
diff
changeset
|
33 CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a" |
83c940b0d18a
allow "make clean" for OpenSSL, the bug was introduced in r2874
Igor Sysoev <igor@sysoev.ru>
parents:
2893
diff
changeset
|
34 CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a" |
2817
38e59bcc35f2
test whether libdl is required for dynamic linking:
Igor Sysoev <igor@sysoev.ru>
parents:
2731
diff
changeset
|
35 CORE_LIBS="$CORE_LIBS $NGX_LIBDL" |
479 | 36 ;; |
399
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
37 esac |
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
38 |
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
39 else |
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
40 |
3683
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
41 if [ "$NGX_PLATFORM" != win32 ]; then |
561 | 42 |
3683
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
43 OPENSSL=NO |
583 | 44 |
3683
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
45 ngx_feature="OpenSSL library" |
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
46 ngx_feature_name="NGX_OPENSSL" |
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
47 ngx_feature_run=no |
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
48 ngx_feature_incs="#include <openssl/ssl.h>" |
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
49 ngx_feature_path= |
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
50 ngx_feature_libs="-lssl -lcrypto" |
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
51 ngx_feature_test="SSL_library_init()" |
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
52 . auto/feature |
399
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
53 |
3683
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
54 if [ $ngx_found = yes ]; then |
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
55 have=NGX_SSL . auto/have |
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
56 CORE_LIBS="$CORE_LIBS $ngx_feature_libs $NGX_LIBDL" |
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
57 OPENSSL=YES |
3684
4d47a0658e7d
stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents:
3683
diff
changeset
|
58 fi |
4d47a0658e7d
stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents:
3683
diff
changeset
|
59 fi |
4d47a0658e7d
stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents:
3683
diff
changeset
|
60 |
4d47a0658e7d
stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents:
3683
diff
changeset
|
61 if [ $OPENSSL != YES ]; then |
2893
da1ba8a5c8c9
stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents:
2876
diff
changeset
|
62 |
da1ba8a5c8c9
stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents:
2876
diff
changeset
|
63 cat << END |
da1ba8a5c8c9
stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents:
2876
diff
changeset
|
64 |
da1ba8a5c8c9
stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents:
2876
diff
changeset
|
65 $0: error: SSL modules require the OpenSSL library. |
da1ba8a5c8c9
stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents:
2876
diff
changeset
|
66 You can either do not enable the modules, or install the OpenSSL library |
da1ba8a5c8c9
stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents:
2876
diff
changeset
|
67 into the system, or build the OpenSSL library statically from the source |
da1ba8a5c8c9
stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents:
2876
diff
changeset
|
68 with nginx by using --with-openssl=<path> option. |
da1ba8a5c8c9
stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents:
2876
diff
changeset
|
69 |
da1ba8a5c8c9
stop ./configure at once on library failure
Igor Sysoev <igor@sysoev.ru>
parents:
2876
diff
changeset
|
70 END |
3684
4d47a0658e7d
stop ./configure on Win32 if no library sources was specified,
Igor Sysoev <igor@sysoev.ru>
parents:
3683
diff
changeset
|
71 exit 1 |
3683
312c2f9b53ac
do not use prebuild OpenSSL Win32 libraries
Igor Sysoev <igor@sysoev.ru>
parents:
3488
diff
changeset
|
72 fi |
399
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
73 |
4e21d1291a14
nginx-0.0.7-2004-07-25-22:34:14 import
Igor Sysoev <igor@sysoev.ru>
parents:
diff
changeset
|
74 fi |