Mercurial > hg > nginx-quic
annotate auto/os/win32 @ 5022:1d819608ad4a
SSL: avoid calling SSL_write() with zero data size.
According to documentation, calling SSL_write() with num=0 bytes to be sent
results in undefined behavior.
We don't currently call ngx_ssl_send_chain() with empty chain and buffer.
This check handles the case of a chain with total data size that is
a multiple of NGX_SSL_BUFSIZE, and with the special buffer at the end.
In practice such cases resulted in premature connection close and critical
error "SSL_write() failed (SSL:)" in the error log.
author | Valentin Bartenev <vbart@nginx.com> |
---|---|
date | Mon, 28 Jan 2013 15:40:25 +0000 |
parents | d620f497c50f |
children | 3d2d3e1cf427 |
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" | |
2731
06d53ecd70c8
*) move advapi32.lib to core libs since it's required for Registry and Event Log
Igor Sysoev <igor@sysoev.ru>
parents:
509
diff
changeset
|
12 CORE_LIBS="$CORE_LIBS advapi32.lib ws2_32.lib" |
461 | 13 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
|
14 SELECT_SRCS=$WIN32_SELECT_SRCS |
455 | 15 |
16 EVENT_MODULES="$EVENT_MODULES $IOCP_MODULE" | |
17 EVENT_FOUND=YES | |
18 | |
19 if [ $EVENT_SELECT = NO ]; then | |
20 CORE_SRCS="$CORE_SRCS $SELECT_SRCS" | |
21 EVENT_MODULES="$EVENT_MODULES $SELECT_MODULE" | |
22 fi | |
23 | |
2814 | 24 if [ $NGX_IPV6 = YES ]; then |
25 have=NGX_HAVE_INET6 . auto/have | |
26 fi | |
27 | |
469 | 28 have=NGX_HAVE_AIO . auto/have |
29 have=NGX_HAVE_IOCP . auto/have |