Merging r4155, r4219, r4220, r4230:

Windows related fixes:

*) Fixed segmentation fault with empty config on Windows.
   See here for report:
   http://mailman.nginx.org/pipermail/nginx-ru/2011-September/043288.html

*) Recent SDKs allow to build IPV6 only for Windows XP or above.

*) Fixing conflict with SDK off_t definition.

*) Fix of building by Microsoft Visual C++ 10 compiler.
This commit is contained in:
Igor Sysoev 2011-11-01 13:56:26 +00:00
parent 22f9238e11
commit 29f1ce37cb
3 changed files with 18 additions and 5 deletions

View File

@ -25,6 +25,13 @@ fi
if [ "$CC" = cl ]; then
if `$NGX_WINE $CC -v 2>&1 \
| grep '^Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16' \
>/dev/null 2>&1`; then
NGX_CC_NAME=msvc10
echo " + using Microsoft Visual C++ 10 compiler"
else if `$NGX_WINE $CC -v 2>&1 \
| grep '^Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 14' \
>/dev/null 2>&1`; then
@ -43,6 +50,7 @@ if [ "$CC" = cl ]; then
echo " + using Microsoft Visual C++ compiler"
fi
fi
fi
else
if [ "$CC" = wcl386 ]; then

View File

@ -1747,10 +1747,12 @@ ngx_http_add_listening(ngx_conf_t *cf, ngx_http_conf_addr_t *addr)
#if (NGX_WIN32)
{
ngx_iocp_conf_t *iocpcf;
ngx_iocp_conf_t *iocpcf = NULL;
iocpcf = ngx_event_get_conf(cf->cycle->conf_ctx, ngx_iocp_module);
if (iocpcf->acceptex_read) {
if (ngx_get_conf(cf->cycle->conf_ctx, ngx_events_module)) {
iocpcf = ngx_event_get_conf(cf->cycle->conf_ctx, ngx_iocp_module);
}
if (iocpcf && iocpcf->acceptex_read) {
ls->post_accept_buffer_size = cscf->client_header_buffer_size;
}
}

View File

@ -9,7 +9,7 @@
#define WIN32 0x0400
#define _WIN32_WINNT 0x0500
#define _WIN32_WINNT 0x0501
#define STRICT
@ -126,8 +126,11 @@ typedef unsigned __int64 uint64_t;
typedef int intptr_t;
typedef u_int uintptr_t;
typedef int ssize_t;
/* Windows defines off_t as long, which is 32-bit */
typedef __int64 off_t;
#define _OFF_T_DEFINED
typedef int ssize_t;
typedef uint32_t in_addr_t;
typedef u_short in_port_t;
typedef int sig_atomic_t;