[nginx] HTTP/2: fixed c->timedout flag on timed out connections.

Maxim Dounin mdounin at mdounin.ru
Mon Aug 10 15:55:56 UTC 2020


details:   https://hg.nginx.org/nginx/rev/d57f15922ca3
branches:  
changeset: 7695:d57f15922ca3
user:      Maxim Dounin <mdounin at mdounin.ru>
date:      Mon Aug 10 18:52:20 2020 +0300
description:
HTTP/2: fixed c->timedout flag on timed out connections.

Without the flag, SSL shutdown is attempted on such connections,
resulting in useless work and/or bogus "SSL_shutdown() failed
(SSL: ... bad write retry)" critical log messages if there are
blocked writes.

diffstat:

 src/http/v2/ngx_http_v2.c |  1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diffs (11 lines):

diff -r 09fb2135a589 -r d57f15922ca3 src/http/v2/ngx_http_v2.c
--- a/src/http/v2/ngx_http_v2.c	Mon Aug 10 18:52:09 2020 +0300
+++ b/src/http/v2/ngx_http_v2.c	Mon Aug 10 18:52:20 2020 +0300
@@ -475,6 +475,7 @@ ngx_http_v2_write_handler(ngx_event_t *w
         ngx_log_debug0(NGX_LOG_DEBUG_HTTP, c->log, 0,
                        "http2 write event timed out");
         c->error = 1;
+        c->timedout = 1;
         ngx_http_v2_finalize_connection(h2c, 0);
         return;
     }


More information about the nginx-devel mailing list