]> git.ipfire.org Git - thirdparty/haproxy.git/commit
BUG/MEDIUM: mux-h1: Continue to process request when switching in tunnel mode
authorChristopher Faulet <cfaulet@haproxy.com>
Fri, 10 Jul 2020 08:01:26 +0000 (10:01 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Wed, 15 Jul 2020 12:08:14 +0000 (14:08 +0200)
commit23021ad7f1d9d0e924aa5e5c6c4103b51a805af0
treee9b0230385c19c0a851b9fbda804470ee9065b45
parent0f9ff14b176b39c7c2e50710feefc2b5bc80548d
BUG/MEDIUM: mux-h1: Continue to process request when switching in tunnel mode

When input data are processed, if the request is switched in tunnel mode on a
protocol upgrade, we must continue the processing. Otherwise, pending input data
will only be processed on the next wakeup. So when new input data are received,
on a timeout expiration or shutdown. Worst, if the input buffer is full when it
happens, only a timeout or a shutdown will unblock the situation.

This patch should fix the issue #737. It must be backported as far as 1.9. The
bug does not seem to affect the 2.0 and 1.9 because, on a protocol upgrade, the
request is switched in tunnel mode when the response is sent to the client. But
the bug is present, so the backport remains necessary.
src/mux_h1.c