Disabled connection reuse while in SSL handshake.
During SSL handshake, the connection could be reused in the OCSP stapling
callback, if configured, which subsequently leads to a segmentation fault.
diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c
index 99fa696..bb69e71 100644
--- a/src/http/ngx_http_request.c
+++ b/src/http/ngx_http_request.c
@@ -748,6 +748,8 @@
return;
}
+ ngx_reusable_connection(c, 0);
+
rc = ngx_ssl_handshake(c);
if (rc == NGX_AGAIN) {
@@ -756,8 +758,6 @@
ngx_add_timer(rev, c->listening->post_accept_timeout);
}
- ngx_reusable_connection(c, 0);
-
c->ssl->handler = ngx_http_ssl_handshake_handler;
return;
}