Mercurial > hg > nginx
changeset 3227:a610008bdc1a
test a duplicate listen in a server
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 22 Oct 2009 08:15:16 +0000 |
parents | 4872f86df719 |
children | 1e1e66ef3a40 |
files | src/http/ngx_http.c |
diffstat | 1 files changed, 11 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/ngx_http.c Thu Oct 22 08:14:02 2009 +0000 +++ b/src/http/ngx_http.c Thu Oct 22 08:15:16 2009 +0000 @@ -1289,6 +1289,7 @@ ngx_http_add_server(ngx_conf_t *cf, ngx_http_core_srv_conf_t *cscf, ngx_http_conf_addr_t *addr) { + ngx_uint_t i; ngx_http_core_srv_conf_t **server; if (addr->servers.elts == NULL) { @@ -1298,6 +1299,16 @@ { return NGX_ERROR; } + + } else { + server = addr->servers.elts; + for (i = 0; i < addr->servers.nelts; i++) { + if (server[i] == cscf) { + ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, + "a duplicate listen %s", addr->opt.addr); + return NGX_ERROR; + } + } } server = ngx_array_push(&addr->servers);