]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MINOR: mux-quic: abort conn if cannot create stream due to fctl
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 18 Jun 2025 14:24:41 +0000 (16:24 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 18 Jun 2025 15:25:27 +0000 (17:25 +0200)
commit81cfaab6b465d2f609d90c4bcbd72f559432fd97
tree37fe79911c02ff191d179cf47c64e2f6a8f317e8
parent06cab99a0e9f3e3c4bdb0b4ebb1c7a36559aa6f2
MINOR: mux-quic: abort conn if cannot create stream due to fctl

Prior to initiate first stream on the backend side, ensure that peer
flow-control allows at least that a single bidirectional stream can be
created. If this is not the case, abort MUX init operation.

Before this patch, flow-control limit was not checked. Hence, if peer
does not allow any bidirectional stream, haproxy would violate it, which
whould then cause the peer to close the connection.

Note that with the current situation, haproxy won't be able to talk to
servers which uses a 0 for initial max bidi streams. A proper solution
could be to pause the request until a MAX_STREAMS is received, under
timeout supervision to ensure the connection is closed if no frame is
received.
src/mux_quic.c