packages/net/haproxy/patches/0008-MEDIUM-increase-chunk-size-limit-to-2GB-1.patch
heil a9334ea84f package: haproxy
- add backported patches from 1.5dev



git-svn-id: svn://svn.openwrt.org/openwrt/packages@37909 3c298f89-4303-0410-b956-a3cf2f4a3e73
2013-09-05 22:42:31 +00:00

32 lines
1.1 KiB
Diff

From 92518a563b9c1f9117e1dec2cc2a8ae95b1643d6 Mon Sep 17 00:00:00 2001
From: Willy Tarreau <w@1wt.eu>
Date: Fri, 24 Feb 2012 19:20:12 +0100
Subject: [PATCH 8/9] MEDIUM: increase chunk-size limit to 2GB-1
Since commit 115acb97, chunk size was limited to 256MB. There is no reason for
such a limit and the comment on the code suggests a missing zero. However,
increasing the limit past 2 GB causes trouble due to some 32-bit subtracts
in various computations becoming negative (eg: buffer_max_len). So let's limit
the chunk size to 2 GB - 1 max.
(cherry picked from commit 431946e9617572d2813bd5a8f5a51ce36f841ea3)
---
src/proto_http.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/proto_http.c b/src/proto_http.c
index 22a7737..7fd1fe6 100644
--- a/src/proto_http.c
+++ b/src/proto_http.c
@@ -2112,7 +2112,7 @@ int http_parse_chunk_size(struct buffer *buf, struct http_msg *msg)
break;
if (++ptr >= end)
ptr = buf->data;
- if (chunk & 0xF000000) /* overflow will occur */
+ if (chunk & 0xF8000000) /* integer overflow will occur if result >= 2GB */
goto error;
chunk = (chunk << 4) + c;
}
--
1.8.1.5