MINOR: ssl: don't abort after sending 16kB
SSL records are 16kB max. When trying to send larger data chunks at once,
SSL_read() only processes 16kB and ssl_sock_from_buf() believes it means
the system buffers are full, which is not the case, contrary to raw_sock.
This is particularly noticeable with HTTP/2 when using a 64kB buffer with
multiple streams, as the mux buffer can start to fill up pretty quickly
in this situation, slowing down the data delivery.
diff --git a/src/ssl_sock.c b/src/ssl_sock.c
index 39063ec..3afcd52 100644
--- a/src/ssl_sock.c
+++ b/src/ssl_sock.c
@@ -5009,10 +5009,6 @@
if (likely(buffer_empty(buf)))
/* optimize data alignment in the buffer */
buf->p = buf->data;
-
- /* if the system buffer is full, don't insist */
- if (ret < try)
- break;
}
else {
ret = SSL_get_error(conn->xprt_ctx, ret);