Mercurial > hg > nginx
comparison src/event/ngx_event_acceptex.c @ 501:d4ea69372b94 release-0.1.25
nginx-0.1.25-RELEASE import
*) Bugfix: nginx did run on Linux parisc.
*) Feature: nginx now does not start under FreeBSD if the sysctl
kern.ipc.somaxconn value is too big.
*) Bugfix: if a request was internally redirected by the
ngx_http_index_module module to the ngx_http_proxy_module or
ngx_http_fastcgi_module modules, then the index file was not closed
after request completion.
*) Feature: the "proxy_pass" can be used in location with regular
expression.
*) Feature: the ngx_http_rewrite_filter_module module supports the
condition like "if ($HTTP_USER_AGENT ~ MSIE)".
*) Bugfix: nginx started too slow if the large number of addresses and
text values were used in the "geo" directive.
*) Change: a variable name must be declared as "$name" in the "geo"
directive. The previous variant without "$" is still supported, but
will be removed soon.
*) Feature: the "%{VARIABLE}v" logging parameter.
*) Feature: the "set $name value" directive.
*) Bugfix: gcc 4.0 compatibility.
*) Feature: the --with-openssl-opt=OPTIONS autoconfiguration directive.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Sat, 19 Mar 2005 12:38:37 +0000 |
parents | d7c90bb5ce83 |
children | 9b8c906f6e63 |
comparison
equal
deleted
inserted
replaced
500:9a0f304470f5 | 501:d4ea69372b94 |
---|---|
151 c->servers = ls->servers; | 151 c->servers = ls->servers; |
152 | 152 |
153 c->recv = ngx_recv; | 153 c->recv = ngx_recv; |
154 c->send_chain = ngx_send_chain; | 154 c->send_chain = ngx_send_chain; |
155 | 155 |
156 if (!(c->pool = ngx_create_pool(ls->pool_size, ls->log))) { | 156 c->pool = ngx_create_pool(ls->pool_size, ls->log); |
157 if (c->pool == NULL) { | |
157 return NGX_ERROR; | 158 return NGX_ERROR; |
158 } | 159 } |
159 | 160 |
160 c->buffer = ngx_create_temp_buf(c->pool, | 161 c->buffer = ngx_create_temp_buf(c->pool, |
161 ls->post_accept_buffer_size | 162 ls->post_accept_buffer_size |
162 + 2 * (c->listening->socklen + 16)); | 163 + 2 * (c->listening->socklen + 16)); |
163 if (c->buffer == NULL) { | 164 if (c->buffer == NULL) { |
164 return NGX_ERROR; | 165 return NGX_ERROR; |
165 } | 166 } |
166 | 167 |
167 if (!(c->local_sockaddr = ngx_palloc(c->pool, ls->socklen))) { | 168 c->local_sockaddr = ngx_palloc(c->pool, ls->socklen); |
168 return NGX_ERROR; | 169 if (c->local_sockaddr == NULL) { |
169 } | 170 return NGX_ERROR; |
170 | 171 } |
171 if (!(c->sockaddr = ngx_palloc(c->pool, ls->socklen))) { | 172 |
172 return NGX_ERROR; | 173 c->sockaddr = ngx_palloc(c->pool, ls->socklen); |
173 } | 174 if (c->sockaddr == NULL) { |
174 | 175 return NGX_ERROR; |
175 if (!(c->log = ngx_palloc(c->pool, sizeof(ngx_log_t)))) { | 176 } |
177 | |
178 c->log = ngx_palloc(c->pool, sizeof(ngx_log_t)); | |
179 if (c->log == NULL) { | |
176 return NGX_ERROR; | 180 return NGX_ERROR; |
177 } | 181 } |
178 | 182 |
179 ngx_memcpy(c->log, ls->log, sizeof(ngx_log_t)); | 183 ngx_memcpy(c->log, ls->log, sizeof(ngx_log_t)); |
180 c->read->log = c->log; | 184 c->read->log = c->log; |