aboutsummaryrefslogtreecommitdiff
path: root/ssl/record/ssl3_buffer.c
diff options
context:
space:
mode:
Diffstat (limited to 'ssl/record/ssl3_buffer.c')
-rw-r--r--ssl/record/ssl3_buffer.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ssl/record/ssl3_buffer.c b/ssl/record/ssl3_buffer.c
index f631829ef646..97b0c26ced81 100644
--- a/ssl/record/ssl3_buffer.c
+++ b/ssl/record/ssl3_buffer.c
@@ -58,6 +58,11 @@ int ssl3_setup_read_buffer(SSL *s)
if (ssl_allow_compression(s))
len += SSL3_RT_MAX_COMPRESSED_OVERHEAD;
#endif
+
+ /* Ensure our buffer is large enough to support all our pipelines */
+ if (s->max_pipelines > 1)
+ len *= s->max_pipelines;
+
if (b->default_len > len)
len = b->default_len;
if ((p = OPENSSL_malloc(len)) == NULL) {