comparison 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
comparison
equal deleted inserted replaced
3394:11965c62b92c 3395:4e15548b29d4
41 typedef struct ngx_http_location_tree_node_s ngx_http_location_tree_node_t; 41 typedef struct ngx_http_location_tree_node_s ngx_http_location_tree_node_t;
42 typedef struct ngx_http_core_loc_conf_s ngx_http_core_loc_conf_t; 42 typedef struct ngx_http_core_loc_conf_s ngx_http_core_loc_conf_t;
43 43
44 44
45 typedef struct { 45 typedef struct {
46 u_char sockaddr[NGX_SOCKADDRLEN]; 46 union {
47 struct sockaddr sockaddr;
48 struct sockaddr_in sockaddr_in;
49 #if (NGX_HAVE_INET6)
50 struct sockaddr_in6 sockaddr_in6;
51 #endif
52 #if (NGX_HAVE_UNIX_DOMAIN)
53 struct sockaddr_un sockaddr_un;
54 #endif
55 u_char sockaddr_data[NGX_SOCKADDRLEN];
56 } u;
57
47 socklen_t socklen; 58 socklen_t socklen;
48 59
49 unsigned set:1; 60 unsigned set:1;
50 unsigned default_server:1; 61 unsigned default_server:1;
51 unsigned bind:1; 62 unsigned bind:1;