From: Willy Tarreau Date: Sun, 9 Feb 2014 07:31:49 +0000 (+0100) Subject: BUG/MINOR: channel: initialize xfer_small/xfer_large on new buffers X-Git-Tag: v1.5-dev23~169 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8f39dcdc8d48b28c2a76eac27aeb78ee89b3ae3f;p=thirdparty%2Fhaproxy.git BUG/MINOR: channel: initialize xfer_small/xfer_large on new buffers These ones are only reset during transfers. There is a low but non-null risk that a first full read causes the previous value to be reused and immediately to immediately set the CF_STREAMER flag. The impact is only to increase earlier than expected the SSL record size and to use splice(). This bug was already present in 1.4, so a backport is possible. --- diff --git a/include/proto/channel.h b/include/proto/channel.h index 49a68b26bb..0afdc6588b 100644 --- a/include/proto/channel.h +++ b/include/proto/channel.h @@ -55,6 +55,7 @@ static inline void channel_init(struct channel *chn) chn->buf->i = 0; chn->buf->p = chn->buf->data; chn->to_forward = 0; + chn->xfer_small = chn->xfer_large = 0; chn->total = 0; chn->pipe = NULL; chn->analysers = 0;