comparison src/http/ngx_http_request.c @ 7751:7efae6b4cfb0

SSL: fixed SSL shutdown on lingering close. Ensure c->recv is properly reset to ngx_recv if SSL_shutdown() blocks on writing. The bug had appeared in 554c6ae25ffc.
author Ruslan Ermilov <ru@nginx.com>
date Tue, 08 Dec 2020 01:43:36 +0300
parents 554c6ae25ffc
children 8989fbd2f89a
comparison
equal deleted inserted replaced
7750:90cc7194e993 7751:7efae6b4cfb0
3395 3395
3396 if (rc == NGX_AGAIN) { 3396 if (rc == NGX_AGAIN) {
3397 c->ssl->handler = ngx_http_set_lingering_close; 3397 c->ssl->handler = ngx_http_set_lingering_close;
3398 return; 3398 return;
3399 } 3399 }
3400
3401 c->recv = ngx_recv;
3402 } 3400 }
3403 #endif 3401 #endif
3404 3402
3405 rev = c->read; 3403 rev = c->read;
3406 rev->handler = ngx_http_lingering_close_handler; 3404 rev->handler = ngx_http_lingering_close_handler;