]> git.ipfire.org Git - thirdparty/haproxy.git/commit
BUG/MINOR: mux-h1: Don't blindly skip EOT block for non-chunked messages
authorChristopher Faulet <cfaulet@haproxy.com>
Wed, 10 Feb 2021 07:48:19 +0000 (08:48 +0100)
committerChristopher Faulet <cfaulet@haproxy.com>
Wed, 10 Feb 2021 15:25:42 +0000 (16:25 +0100)
commit0a916d2aca79bc6bbb38cc5ebcc1bb51de614b7c
tree1be590e541a885f8674b4ea4dd5e5ce7ade474bd
parent0d7e634631dd96378256d5783f6876169558b7f2
BUG/MINOR: mux-h1: Don't blindly skip EOT block for non-chunked messages

In HTTP/2, we may have trailers for messages with a Content-length
header. Thus, when the H2 mux receives a HEADERS frame at the end of a
message, it always emits TLR and EOT HTX blocks. On the H1 mux, if this
happens, these blocks are just skipped because we cannot emit trailers for a
non-chunked message. But the EOT HTX block must not be blindly
ignored. Indeed, there is no longer EOM HTX block to mark the end of the
message. Thus the EOT block, when found, is the end of the message. So we
must handle it to swith in MSG_DONE state.

This fix is specific for 2.4. No backport needed.
src/mux_h1.c