diff options
author | Igor Sysoev <igor@sysoev.ru> | 2004-09-06 18:45:00 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2004-09-06 18:45:00 +0000 |
commit | aab4d8c0c4aa068cc7ddcb1c5daee330d9dec47a (patch) | |
tree | 30f6fb63eb08c72af5855f0a784df32a64057706 /src/http/ngx_http.c | |
parent | 980a92472cc30271ad7e88eb2dcc43f00e984d4d (diff) | |
download | nginx-aab4d8c0c4aa068cc7ddcb1c5daee330d9dec47a.tar.gz nginx-aab4d8c0c4aa068cc7ddcb1c5daee330d9dec47a.zip |
nginx-0.0.10-2004-09-06-22:45:00 import
Diffstat (limited to 'src/http/ngx_http.c')
-rw-r--r-- | src/http/ngx_http.c | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/src/http/ngx_http.c b/src/http/ngx_http.c index 492ba6f8a..fabb2dd05 100644 --- a/src/http/ngx_http.c +++ b/src/http/ngx_http.c @@ -500,13 +500,16 @@ static char *ngx_http_block(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) in_addr = in_port[p].addrs.elts; while (a < in_port[p].addrs.nelts) { - ngx_test_null(ls, ngx_push_array(&cf->cycle->listening), - NGX_CONF_ERROR); + if (!(ls = ngx_push_array(&cf->cycle->listening))) { + return NGX_CONF_ERROR; + } + ngx_memzero(ls, sizeof(ngx_listening_t)); - ngx_test_null(addr_in, - ngx_pcalloc(cf->pool, sizeof(struct sockaddr_in)), - NGX_CONF_ERROR); + addr_in = ngx_pcalloc(cf->pool, sizeof(struct sockaddr_in)); + if (addr_in == NULL) { + return NGX_CONF_ERROR; + } #if (HAVE_SIN_LEN) addr_in->sin_len = sizeof(struct sockaddr_in); @@ -515,17 +518,18 @@ static char *ngx_http_block(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) addr_in->sin_addr.s_addr = in_addr[a].addr; addr_in->sin_port = htons((u_short) in_port[p].port); - ngx_test_null(ls->addr_text.data, - ngx_palloc(cf->pool, INET_ADDRSTRLEN + 6), - NGX_CONF_ERROR); + ls->addr_text.data = ngx_palloc(cf->pool, INET_ADDRSTRLEN + 6); + if (ls->addr_text.data == NULL) { + return NGX_CONF_ERROR; + } + + ls->addr_text.len = ngx_inet_ntop(AF_INET, &in_addr[a].addr, + ls->addr_text.data, + INET_ADDRSTRLEN), - ls->addr_text.len = - ngx_snprintf((char *) ls->addr_text.data - + ngx_inet_ntop(AF_INET, - &in_addr[a].addr, - ls->addr_text.data, - INET_ADDRSTRLEN), - 6, ":%d", in_port[p].port); + ls->addr_text.len += ngx_snprintf((char *) ls->addr_text.data + + ls->addr_text.len, + 6, ":%d", in_port[p].port); ls->fd = (ngx_socket_t) -1; ls->family = AF_INET; |