Mercurial > hg > nginx-quic
changeset 8468:1336a33cff33
Fixed log action when using SSL certificates with variables.
When variables are used in ssl_certificate or ssl_certificate_key, a request
is created in the certificate callback to evaluate the variables, and then
freed. Freeing it, however, updates c->log->action to "closing request",
resulting in confusing error messages like "client timed out ... while
closing request" when a client times out during the SSL handshake.
Fix is to restore c->log->action after calling ngx_http_free_request().
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 24 May 2021 18:23:42 +0300 |
parents | 2ab7b55ae4a0 |
children | 1bde031b59ff |
files | src/http/ngx_http_request.c |
diffstat | 1 files changed, 2 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/ngx_http_request.c +++ b/src/http/ngx_http_request.c @@ -1043,12 +1043,14 @@ ngx_http_ssl_certificate(ngx_ssl_conn_t } ngx_http_free_request(r, 0); + c->log->action = "SSL handshaking"; c->destroyed = 0; return 1; failed: ngx_http_free_request(r, 0); + c->log->action = "SSL handshaking"; c->destroyed = 0; return 0; }