Mercurial > hg > nginx
diff src/http/ngx_http_core_module.c @ 9060:91ad1abfb285 quic
Merged with the default branch.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Thu, 15 Dec 2022 19:40:44 +0400 |
parents | 6cf8ed15fd00 4cc2bfeff46c |
children | af5adec171b4 |
line wrap: on
line diff
--- a/src/http/ngx_http_core_module.c Tue Oct 25 12:52:09 2022 +0400 +++ b/src/http/ngx_http_core_module.c Thu Dec 15 19:40:44 2022 +0400 @@ -3964,7 +3964,7 @@ ngx_str_t *value, size; ngx_url_t u; - ngx_uint_t n; + ngx_uint_t n, i; ngx_http_listen_opt_t lsopt; cscf->listen = 1; @@ -4310,6 +4310,16 @@ #endif for (n = 0; n < u.naddrs; n++) { + + for (i = 0; i < n; i++) { + if (ngx_cmp_sockaddr(u.addrs[n].sockaddr, u.addrs[n].socklen, + u.addrs[i].sockaddr, u.addrs[i].socklen, 0) + == NGX_OK) + { + goto next; + } + } + lsopt.sockaddr = u.addrs[n].sockaddr; lsopt.socklen = u.addrs[n].socklen; lsopt.addr_text = u.addrs[n].name; @@ -4318,6 +4328,9 @@ if (ngx_http_add_listen(cf, cscf, &lsopt) != NGX_OK) { return NGX_CONF_ERROR; } + + next: + continue; } return NGX_CONF_OK;