]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MINOR: mux-quic/h3: emit SETTINGS via MUX tasklet handler
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Mon, 17 Feb 2025 15:00:03 +0000 (16:00 +0100)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 19 Feb 2025 10:03:40 +0000 (11:03 +0100)
commit06e7674399efa5c3c2a3a355d132bb656c6adea8
tree5494b6104f499d4563a22dd0d61723770b9df98f
parent188fc45b95f52cfb573ba4c28f0e294b41172672
MINOR: mux-quic/h3: emit SETTINGS via MUX tasklet handler

Previously, QUIC MUX application layer was installed and initialized via
MUX init. However, the latter stage involve I/O operations, for example
when using HTTP/3 with the emission of a SETTINGS frame.

Change this to prevent any I/O operations during MUX init. As such,
finalize app_ops callback is now called during the first invokation of
qcc_io_send(), in the context of MUX tasklet. To implement this, a new
application state value is added, to detect the transition from NULL to
INIT stage.
include/haproxy/mux_quic-t.h
src/h3.c
src/mux_quic.c
src/qmux_trace.c