From 217f8cea3a8434e009f843b7043c8e102d8527ac Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Tue, 14 Dec 2010 19:19:07 +0000 Subject: merge r3659, r3825, r3826: IPv6 related fixes: *) fix IPv6 listen socket handling while reconfiguring *) test wildcard tail hash existance for IPv6 addresses, the same fix for IPv4 addresses has been made in r2581 *) always run regex in server_name to get captures for IPv6 addresses, the same fix for IPv4 addresses has been made in r2584 --- src/core/ngx_cycle.c | 2 +- src/http/ngx_http.c | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/core/ngx_cycle.c b/src/core/ngx_cycle.c index cb551e945..3d4df5d01 100644 --- a/src/core/ngx_cycle.c +++ b/src/core/ngx_cycle.c @@ -847,7 +847,7 @@ ngx_cmp_sockaddr(struct sockaddr *sa1, struct sockaddr *sa2) sin61 = (struct sockaddr_in6 *) sa1; sin62 = (struct sockaddr_in6 *) sa2; - if (sin61->sin6_port != sin61->sin6_port) { + if (sin61->sin6_port != sin62->sin6_port) { return NGX_DECLINED; } diff --git a/src/http/ngx_http.c b/src/http/ngx_http.c index f5cb430fa..3ac3eb617 100644 --- a/src/http/ngx_http.c +++ b/src/http/ngx_http.c @@ -1831,8 +1831,12 @@ ngx_http_add_addrs6(ngx_conf_t *cf, ngx_http_port_t *hport, if (addr[i].hash.buckets == NULL && (addr[i].wc_head == NULL || addr[i].wc_head->hash.buckets == NULL) - && (addr[i].wc_head == NULL - || addr[i].wc_head->hash.buckets == NULL)) + && (addr[i].wc_tail == NULL + || addr[i].wc_tail->hash.buckets == NULL) +#if (NGX_PCRE) + && addr[i].nregex == 0 +#endif + ) { continue; } -- cgit