]> git.ipfire.org Git - thirdparty/haproxy.git/commit
BUG/MEDIUM: mux-h1: Handle abort with an incomplete message during parsing
authorChristopher Faulet <cfaulet@haproxy.com>
Mon, 10 Oct 2022 16:05:25 +0000 (18:05 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Wed, 12 Oct 2022 15:10:44 +0000 (17:10 +0200)
commit104985610dc4c673f66e4c2eddf9633bc1c7149c
tree37de2e7411a267e805704b905964dc7f51584a20
parent9009c974c1e1f5bdb61df3f62732e51cae026f48
BUG/MEDIUM: mux-h1: Handle abort with an incomplete message during parsing

In h1_process_demux(), aborts for incomplete messages were not properly
handled. It was not an issue because the abort was detected later in
h1_process(). But it will be an issue to perform the aborts refoctoring.

First, when a read0 was detected, the SE_FL_EOI flag was set for messages in
DONE or TUNNEL state or for messages without known length (so responses in
close mode). The last statement is not accurate. The message must also be in
DATA state. Otherwise, SE_FL_EOI flag may be set on incomplete message.

Then, an error was reported, via SE_FL_ERROR flag, only when an incomplete
message was detected on the payload parsing. It must also be reported if
headers are incomplete. Here again, the error is detected later for now. But
it could be an issue later.

There is no reason to backport this patch.
src/mux_h1.c