]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MINOR: quic: do not modify offset node if quic_rx_strm_frm in tree
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Mon, 21 Feb 2022 16:53:38 +0000 (17:53 +0100)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Mon, 21 Feb 2022 17:46:58 +0000 (18:46 +0100)
commitd1c76f24fdf1cfb85e574cb1ef0c773b74bee32a
tree64382783a079cbcd29b75f027f3282eeed9e58c2
parentae17925b87fac8057917125639726685c8a82d20
MINOR: quic: do not modify offset node if quic_rx_strm_frm in tree

qc_rx_strm_frm_cpy is unsafe because it updates the offset field of the
frame. This is not safe as the frame is inserted in the tree when
calling this function and offset serves as the key node.

To fix this, the API is modified so that qc_rx_strm_frm_cpy does not
update the frame parameter. The caller is responsible to update
offset/length in case of a partial copy.

The impact of this bug is not known. It can only happened with received
STREAM frames out-of-order. This might be triggered with large h3 POST
requests.
src/xprt_quic.c