Mercurial > hg > nginx
comparison src/http/ngx_http_request.c @ 253:b6793bc5034b
nginx-0.0.2-2004-02-09-10:46:43 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 09 Feb 2004 07:46:43 +0000 |
parents | 008276b9e061 |
children | 8e39cab6abd5 |
comparison
equal
deleted
inserted
replaced
252:84b1c672ec5a | 253:b6793bc5034b |
---|---|
81 c->log->handler = ngx_http_log_error; | 81 c->log->handler = ngx_http_log_error; |
82 | 82 |
83 rev = c->read; | 83 rev = c->read; |
84 rev->event_handler = ngx_http_init_request; | 84 rev->event_handler = ngx_http_init_request; |
85 rev->log_error = NGX_ERROR_INFO; | 85 rev->log_error = NGX_ERROR_INFO; |
86 | |
87 /* STUB: epoll */ c->write->event_handler = ngx_http_empty_handler; | |
86 | 88 |
87 if (rev->ready) { | 89 if (rev->ready) { |
88 /* deferred accept, aio, iocp, epoll */ | 90 /* deferred accept, aio, iocp, epoll */ |
89 ngx_http_init_request(rev); | 91 ngx_http_init_request(rev); |
90 return; | 92 return; |
158 i = 0; | 160 i = 0; |
159 | 161 |
160 if (in_port->addrs.nelts > 1) { | 162 if (in_port->addrs.nelts > 1) { |
161 | 163 |
162 /* | 164 /* |
163 * There're the several addresses on this port and one of them | 165 * There are the several addresses on this port and one of them |
164 * is "*:port" so getsockname() is needed to determine | 166 * is "*:port" so getsockname() is needed to determine |
165 * the server address. | 167 * the server address. |
166 * AcceptEx() already gave this address. | 168 * AcceptEx() already gave this address. |
167 */ | 169 */ |
168 | 170 |
213 clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); | 215 clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); |
214 c->log->file = clcf->err_log->file; | 216 c->log->file = clcf->err_log->file; |
215 c->log->log_level = clcf->err_log->log_level; | 217 c->log->log_level = clcf->err_log->log_level; |
216 | 218 |
217 if (c->buffer == NULL) { | 219 if (c->buffer == NULL) { |
218 c->buffer = | 220 c->buffer = ngx_create_temp_hunk(c->pool, |
219 ngx_create_temp_hunk(c->pool, cscf->client_header_buffer_size); | 221 cscf->client_header_buffer_size); |
220 if (c->buffer == NULL) { | 222 if (c->buffer == NULL) { |
221 ngx_http_close_connection(c); | 223 ngx_http_close_connection(c); |
222 return; | 224 return; |
223 } | 225 } |
224 } | 226 } |
916 | 918 |
917 if (r->connection->read->kq_eof) { | 919 if (r->connection->read->kq_eof) { |
918 #if (NGX_KQUEUE) | 920 #if (NGX_KQUEUE) |
919 ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, | 921 ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, |
920 r->connection->read->kq_errno, | 922 r->connection->read->kq_errno, |
921 "kevent reported about closed connection by client"); | 923 "kevent() reported about an closed connection"); |
922 #endif | 924 #endif |
923 ngx_http_close_request(r, 0); | 925 ngx_http_close_request(r, 0); |
924 ngx_http_close_connection(r->connection); | 926 ngx_http_close_connection(r->connection); |
925 return; | 927 return; |
926 } | 928 } |