diff options
author | Igor Sysoev <igor@sysoev.ru> | 2007-12-27 15:31:36 +0000 |
---|---|---|
committer | Jonathan Kolb <jon@b0g.us> | 2007-12-27 15:31:36 +0000 |
commit | 37acebc32d2a50b11537edd920af3721b93a1ecc (patch) | |
tree | 5338ea420eec0818d8e123a91973ee90308693f5 /src/http/ngx_http_request.c | |
parent | 73cd30361418f277067c128cedee4990aa72840b (diff) | |
download | nginx-0.6.23.tar.gz |
Changes with nginx 0.6.23 27 Dec 2007v0.6.23
*) Change: the "off" parameter in the "ssl_session_cache" directive;
now this is default parameter.
*) Change: the "open_file_cache_retest" directive was renamed to the
"open_file_cache_valid".
*) Feature: the "open_file_cache_min_uses" directive.
*) Feature: the ngx_http_gzip_static_module.
*) Feature: the "gzip_disable" directive.
*) Feature: the "memcached_pass" directive may be used inside the "if"
block.
*) Bugfix: a segmentation fault occurred in worker process, if the
"memcached_pass" and "if" directives were used in the same location.
*) Bugfix: if a "satisfy_any on" directive was used and not all access
and auth modules directives were set, then other given access and
auth directives were not tested;
*) Bugfix: regex parameters in a "valid_referers" directive were not
inherited from previous level.
*) Bugfix: a "post_action" directive did run if a request was completed
with 499 status code.
*) Bugfix: optimization of 16K buffer usage in a SSL connection.
Thanks to Ben Maurer.
*) Bugfix: the STARTTLS in SMTP mode did not work.
Thanks to Oleg Motienko.
*) Bugfix: in HTTPS mode requests might fail with the "bad write retry"
error; bug appeared in 0.5.13.
Diffstat (limited to 'src/http/ngx_http_request.c')
-rw-r--r-- | src/http/ngx_http_request.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c index c04c6f9d6..a5ebf1292 100644 --- a/src/http/ngx_http_request.c +++ b/src/http/ngx_http_request.c @@ -1595,7 +1595,11 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc) rc = r->post_subrequest->handler(r, r->post_subrequest->data, rc); } - if (rc == NGX_ERROR || rc == NGX_HTTP_REQUEST_TIME_OUT || c->error) { + if (rc == NGX_ERROR + || rc == NGX_HTTP_REQUEST_TIME_OUT + || rc == NGX_HTTP_CLIENT_CLOSED_REQUEST + || c->error) + { if (rc > 0 && r->headers_out.status == 0) { r->headers_out.status = rc; } @@ -1677,8 +1681,8 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc) } ngx_log_debug2(NGX_LOG_DEBUG_HTTP, c->log, 0, - "http fast subrequest: \"%V?%V\" done", - &r->uri, &r->args); + "http fast subrequest: \"%V?%V\" done", + &r->uri, &r->args); return; } @@ -2112,6 +2116,12 @@ ngx_http_set_keepalive(ngx_http_request_t *r) hc->nbusy = 0; } +#if (NGX_HTTP_SSL) + if (c->ssl) { + ngx_ssl_free_buffer(c); + } +#endif + rev->handler = ngx_http_keepalive_handler; if (wev->active && (ngx_event_flags & NGX_USE_LEVEL_EVENT)) { |