Mercurial > hg > nginx
diff src/http/ngx_http_core_module.h @ 3395:4e15548b29d4
fix building by gcc 4.4 with -O2/3/s:
dereferencing pointer 'sin' does break strict-aliasing rules
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 22 Dec 2009 15:15:45 +0000 |
parents | 42c16d8bddbe |
children | 81457372d938 |
line wrap: on
line diff
--- a/src/http/ngx_http_core_module.h +++ b/src/http/ngx_http_core_module.h @@ -43,7 +43,18 @@ typedef struct ngx_http_core_loc_conf_s typedef struct { - u_char sockaddr[NGX_SOCKADDRLEN]; + union { + struct sockaddr sockaddr; + struct sockaddr_in sockaddr_in; +#if (NGX_HAVE_INET6) + struct sockaddr_in6 sockaddr_in6; +#endif +#if (NGX_HAVE_UNIX_DOMAIN) + struct sockaddr_un sockaddr_un; +#endif + u_char sockaddr_data[NGX_SOCKADDRLEN]; + } u; + socklen_t socklen; unsigned set:1;