nginx/src
Patryk Lesiewicz 7b3f187bc6 Upstream: flush low-level buffers on write retry.
If the data to write is bigger than what the socket can send, and the
reminder is smaller than NGX_SSL_BUFSIZE, then SSL_write() fails with
SSL_ERROR_WANT_WRITE. The reminder of payload however is successfully
copied to the low-level buffer and all the output chain buffers are
flushed. This means that retry logic doesn't work because
ngx_http_upstream_process_non_buffered_request() checks only if there's
anything in the output chain buffers and ignores the fact that something
may be buffered in low-level parts of the stack.

Signed-off-by: Patryk Lesiewicz <patryk@google.com>
2017-12-01 15:59:14 -08:00
..
core Fixed "changing binary" when reaper is not init. 2017-11-28 12:00:24 +03:00
event SSL: include <openssl/hmac.h>. 2017-10-11 15:43:50 -07:00
http Upstream: flush low-level buffers on write retry. 2017-12-01 15:59:14 -08:00
mail Fixed worker_shutdown_timeout in various cases. 2017-11-20 16:31:07 +03:00
misc Style: aligned ngx_null_command. 2017-07-12 11:34:04 +03:00
os Removed unused FreeBSD-specific definitions in ngx_posix_config.h. 2017-11-28 13:09:54 +03:00
stream Fixed worker_shutdown_timeout in various cases. 2017-11-20 16:31:07 +03:00