From: Christopher Faulet Date: Thu, 23 Nov 2023 16:26:26 +0000 (+0100) Subject: BUG/MEDIUM: mux-h1: Don't set CO_SFL_MSG_MORE flag on last fast-forward send X-Git-Tag: v2.9-dev11~10 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=85da7116a9940575a31aba69f68e82489f9a9fd9;p=thirdparty%2Fhaproxy.git BUG/MEDIUM: mux-h1: Don't set CO_SFL_MSG_MORE flag on last fast-forward send In the mux-to-mux fast-forwarding, when end-of-input is reached on the producer side, the consumer side must not set the CO_SFL_MSG_MORE flag on send. It means the H1C_F_CO_MSG_MORE flag must be removed from the H1 connection. No backport needed. --- diff --git a/src/mux_h1.c b/src/mux_h1.c index 5f94a2ef0e..63eb78e1c3 100644 --- a/src/mux_h1.c +++ b/src/mux_h1.c @@ -4516,6 +4516,9 @@ static size_t h1_done_ff(struct stconn *sc) sd->iobuf.offset = 0; sd->iobuf.data = 0; + if (sd->iobuf.flags & IOBUF_FL_EOI) + h1c->flags &= ~H1C_F_CO_MSG_MORE; + /* Perform a synchronous send but in all cases, consider * everything was already sent from the SC point of view. */