Mercurial > hg > nginx
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; |