diff options
| author | Igor Sysoev <igor@sysoev.ru> | 2010-12-14 19:19:07 +0000 |
|---|---|---|
| committer | Igor Sysoev <igor@sysoev.ru> | 2010-12-14 19:19:07 +0000 |
| commit | 217f8cea3a8434e009f843b7043c8e102d8527ac (patch) | |
| tree | 5d47244d9d43724b4a081ce2e56f364b7b933817 /src | |
| parent | 772ecd6cc60d98df3a48daaef2b3c1e048a76372 (diff) | |
| download | nginx-217f8cea3a8434e009f843b7043c8e102d8527ac.tar.gz nginx-217f8cea3a8434e009f843b7043c8e102d8527ac.tar.bz2 | |
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
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/ngx_cycle.c | 2 | ||||
| -rw-r--r-- | src/http/ngx_http.c | 8 |
2 files changed, 7 insertions, 3 deletions
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; } |
