]> git.kaiwu.me - nginx.git/commit
SSL: reworked posted next events.
authorMaxim Dounin <mdounin@mdounin.ru>
Tue, 24 Dec 2019 14:24:59 +0000 (17:24 +0300)
committerMaxim Dounin <mdounin@mdounin.ru>
Tue, 24 Dec 2019 14:24:59 +0000 (17:24 +0300)
commit24f18aea8ce1e847362c6bfa586bc0807ebae90d
treed691aecc335b140cc1deb45bf356421004284df0
parent810559665a704957431b387572af99a82039162a
SSL: reworked posted next events.

Introduced in 9d2ad2fb4423 available bytes handling in SSL relied
on connection read handler being overwritten to set the ready flag
and the amount of available bytes.  This approach is, however, does
not work properly when connection read handler is changed, for example,
when switching to a next pipelined request, and can result in unexpected
connection timeouts, see here:

http://mailman.nginx.org/pipermail/nginx-devel/2019-December/012825.html

Fix is to introduce ngx_event_process_posted_next() instead, which
will set ready and available regardless of how event handler is set.
src/event/ngx_event.c
src/event/ngx_event_openssl.c
src/event/ngx_event_openssl.h
src/event/ngx_event_posted.c
src/event/ngx_event_posted.h