]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MEDIUM: quic: do not ACK packet with STREAM if MUX not present
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Fri, 29 Apr 2022 13:57:49 +0000 (15:57 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Fri, 29 Apr 2022 14:15:47 +0000 (16:15 +0200)
commitd46e335683a76302b20b87135d72e8d8be495c14
treedd8b9e8971391d4a66687a410404e3d6c228c376
parent4173f4ea2986d344850f4c19160fd731bef5833e
MEDIUM: quic: do not ACK packet with STREAM if MUX not present

If a packet contains a STREAM frame but the MUX is not allocated, the
frame cannot be enqueued. According to the RFC9000, we must not
acknowledge the packet under this condition.

This may prevents a bug with firefox which keeps trying on refreshing
the web page. This issue has already been detected before closing state
implementation : haproxy wasn't emitted CONNECTION_CLOSE and keeps
acknowledge STREAM frames despite not handle them.

In the future, it might be necessary to respond with a CONNECTION_CLOSE
if the MUX has already been freed.
src/xprt_quic.c