]> git.kaiwu.me - haproxy.git/commit
BUG/MEDIUM: mux-spop: Properly handle parsing of split HELLO/DISCONNECT frames
authorChristopher Faulet <cfaulet@haproxy.com>
Fri, 28 Aug 2026 08:24:08 +0000 (10:24 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Fri, 28 Aug 2026 08:34:02 +0000 (10:34 +0200)
commit88bb0050de869b50df81ba65606734fa23022abd
tree9fd802075a78cee3d6ba62881b499ae2305b9ebf
parentf858386f637c659c72ad62225c0aa634f27c4de6
BUG/MEDIUM: mux-spop: Properly handle parsing of split HELLO/DISCONNECT frames

The parsing of HELLO/DISCONNECT frames did not properly handle frames split
into several packets. In that case, the frame header parsing was not
bypassed once received and consumed when waiting for the payload. So when
the frame payload was finally received, the demux tried to re-read the frame
headers, triggering this way a parsing error. It was especially an issue on
HELLO frame, because this led to reject the SPOP connexion.

Now, the HELLO/DISCONNECT frames header is only parsed onced. If the demux
must wait for the frame payload, the frame header parsing is skipped to
properly parse the frame payload.

Note it was only an issue for HELLO/DISCONNECT frames.

This patch should fix the issue #3478. It must be backported as far as 3.2.
src/mux_spop.c