aboutsummaryrefslogtreecommitdiff
path: root/src/http/ngx_http_request.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2008-01-04 09:32:12 +0000
committerIgor Sysoev <igor@sysoev.ru>2008-01-04 09:32:12 +0000
commit7b8ed4259b04c0124c375f329fb0a3711e3bc54c (patch)
treee0b1409869fba658066baf348a8904be36576475 /src/http/ngx_http_request.c
parent81922511aea40fcab399dfe2f684cc0220e2f080 (diff)
downloadnginx-7b8ed4259b04c0124c375f329fb0a3711e3bc54c.tar.gz
nginx-7b8ed4259b04c0124c375f329fb0a3711e3bc54c.zip
fix socket leak if deferred accept was used
Diffstat (limited to 'src/http/ngx_http_request.c')
-rw-r--r--src/http/ngx_http_request.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c
index 0816cf920..bb21b71b2 100644
--- a/src/http/ngx_http_request.c
+++ b/src/http/ngx_http_request.c
@@ -490,6 +490,11 @@ ngx_http_ssl_handshake(ngx_event_t *rev)
rc = ngx_ssl_handshake(c);
if (rc == NGX_AGAIN) {
+
+ if (!rev->timer_set) {
+ ngx_add_timer(rev, c->listening->post_accept_timeout);
+ }
+
c->ssl->handler = ngx_http_ssl_handshake_handler;
return;
}