comparison src/http/ngx_http.c @ 3230:a7491af45540

http listen unix domain sockets
author Igor Sysoev <igor@sysoev.ru>
date Mon, 26 Oct 2009 11:43:32 +0000
parents a632dc9f3e73
children 8bd88de8fecd
comparison
equal deleted inserted replaced
3229:a632dc9f3e73 3230:a7491af45540
1126 sin6 = (struct sockaddr_in6 *) sa; 1126 sin6 = (struct sockaddr_in6 *) sa;
1127 p = sin6->sin6_port; 1127 p = sin6->sin6_port;
1128 break; 1128 break;
1129 #endif 1129 #endif
1130 1130
1131 #if (NGX_HAVE_UNIX_DOMAIN)
1132 case AF_UNIX:
1133 p = 0;
1134 break;
1135 #endif
1136
1131 default: /* AF_INET */ 1137 default: /* AF_INET */
1132 sin = (struct sockaddr_in *) sa; 1138 sin = (struct sockaddr_in *) sa;
1133 p = sin->sin_port; 1139 p = sin->sin_port;
1134 break; 1140 break;
1135 } 1141 }
1168 u_char *p; 1174 u_char *p;
1169 size_t len, off; 1175 size_t len, off;
1170 ngx_uint_t i, default_server; 1176 ngx_uint_t i, default_server;
1171 struct sockaddr *sa; 1177 struct sockaddr *sa;
1172 ngx_http_conf_addr_t *addr; 1178 ngx_http_conf_addr_t *addr;
1179 #if (NGX_HAVE_UNIX_DOMAIN)
1180 struct sockaddr_un *saun;
1181 #endif
1173 1182
1174 /* 1183 /*
1175 * we can not compare whole sockaddr struct's as kernel 1184 * we can not compare whole sockaddr struct's as kernel
1176 * may fill some fields in inherited sockaddr struct's 1185 * may fill some fields in inherited sockaddr struct's
1177 */ 1186 */
1182 1191
1183 #if (NGX_HAVE_INET6) 1192 #if (NGX_HAVE_INET6)
1184 case AF_INET6: 1193 case AF_INET6:
1185 off = offsetof(struct sockaddr_in6, sin6_addr); 1194 off = offsetof(struct sockaddr_in6, sin6_addr);
1186 len = 16; 1195 len = 16;
1196 break;
1197 #endif
1198
1199 #if (NGX_HAVE_UNIX_DOMAIN)
1200 case AF_UNIX:
1201 off = offsetof(struct sockaddr_un, sun_path);
1202 len = sizeof(saun->sun_path);
1187 break; 1203 break;
1188 #endif 1204 #endif
1189 1205
1190 default: /* AF_INET */ 1206 default: /* AF_INET */
1191 off = offsetof(struct sockaddr_in, sin_addr); 1207 off = offsetof(struct sockaddr_in, sin_addr);