mirror of
https://github.com/nginx/nginx.git
synced 2025-06-11 04:12:40 +08:00
SSL: disabled shutdown after connection errors.
This fixes "SSL_shutdown() failed (SSL: ... bad write retry)" errors as observed on the second SSL_shutdown() call after SSL shutdown fixes in 09fb2135a589 (1.19.2), notably when sending fails in ngx_http_test_expect(), similarly to ticket #1194. Note that there are some places where c->error is misused to prevent further output, such as ngx_http_v2_finalize_connection() if there are pending streams, or in filter finalization. These places seem to be extreme enough to don't care about missing shutdown though. For example, filter finalization currently prevents keepalive from being used.
This commit is contained in:
parent
a1864c2586
commit
f6c28f93af
@ -2805,7 +2805,7 @@ ngx_ssl_shutdown(ngx_connection_t *c)
|
||||
return NGX_OK;
|
||||
}
|
||||
|
||||
if (c->timedout) {
|
||||
if (c->timedout || c->error) {
|
||||
mode = SSL_RECEIVED_SHUTDOWN|SSL_SENT_SHUTDOWN;
|
||||
SSL_set_quiet_shutdown(c->ssl->connection, 1);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user