]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: mux-quic: handle flow-control frame on qstream read
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Fri, 27 Mar 2026 09:15:13 +0000 (10:15 +0100)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Thu, 2 Apr 2026 12:02:04 +0000 (14:02 +0200)
Implements parsing of frames related to flow-control for mux-quic
running on the new QMux protocol. This simply calls qcc_recv_*() MUX
functions already used by QUIC.

src/mux_quic_qstrm.c

index 17ab97713b289b6778bb1a8908332e103010a850..2c885b4530c0e19d7ab0f5f8ccd220801ed6c5a9 100644 (file)
@@ -64,6 +64,14 @@ static int qstrm_parse_frm(struct qcc *qcc, struct buffer *buf)
                struct qf_reset_stream *rst_frm = &frm.reset_stream;
                qcc_recv_reset_stream(qcc, rst_frm->id, rst_frm->app_error_code, rst_frm->final_size);
        }
+       else if (frm.type == QUIC_FT_MAX_DATA) {
+               struct qf_max_data *md_frm = &frm.max_data;
+               qcc_recv_max_data(qcc, md_frm->max_data);
+       }
+       else if (frm.type == QUIC_FT_MAX_STREAM_DATA) {
+               struct qf_max_stream_data *msd_frm = &frm.max_stream_data;
+               qcc_recv_max_stream_data(qcc, msd_frm->id, msd_frm->max_stream_data);
+       }
        else {
                ABORT_NOW();
        }