]> git.kaiwu.me - haproxy.git/commit
MINOR: mux_quic: reset stream after app shutdown for HTTP/0.9
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 22 Apr 2026 07:28:24 +0000 (09:28 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 6 May 2026 06:51:27 +0000 (08:51 +0200)
commitaf49294633abd3fb41067027fe97bd09c414891f
tree5547e5688de17cbed16d03248e790cda08b34e5d
parentb71a0e78744d206602ecb602b7e17c8368e2c7c2
MINOR: mux_quic: reset stream after app shutdown for HTTP/0.9

HTTP/3 implements a GOAWAY frame for graceful shutdown. This allows to
reject any new stream opening with a larger ID. This is implemented via
HTTP/3 attach() callback called by qcs_new().

When HTTP/0.9 is used, there is no similar mechanism. This renders some
feature such as server max-reuse difficult to implement. This patch now
provides a method for such protocols with no graceful shutdown support.
Instead of invoking attach() callback, a stream is now immediately
resetted if the application protocol layer is already closed.

This patch does not change the behavior for HTTP/3. Only limited
protocols (currently only HTTP/0.9) without graceful shutdown are
impacted. These protocols are identified as their shutdown() callback is
nul.

This change is only necessary for HTTP/0.9 as there is no equivalent of
HTTP/3 GOAWAY in this case.
src/mux_quic.c