]> git.kaiwu.me - haproxy.git/commit
MINOR: mux-quic: partially copy Rx frame if almost full buf
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Tue, 26 Apr 2022 09:36:40 +0000 (11:36 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Thu, 28 Apr 2022 13:42:21 +0000 (15:42 +0200)
commit3df8ca0a4d2662c058e1f30d708806ec815b1cba
tree51ddd3e059e778e91872d67d2f428c9264616256
parent30f23f53d237ade95910352922a4b17d5b358fa8
MINOR: mux-quic: partially copy Rx frame if almost full buf

Improve the reception for STREAM frames. In qcc_recv(), if the frame is
bigger than the remaining space in rx buffer, do not reject it wholly.
Instead, copy as much data as possible. The rest of the data is
buffered.

This is necessary to handle H3 frames bigger than a buffer. The H3 code
does not demux until the frame is complete or the buffer is full.
Without this, the transfer on payload larger than the Rx buffer can
rapidly freeze.
include/haproxy/mux_quic.h
src/mux_quic.c
src/xprt_quic.c