From 3f21611bddc40099e0fa4b1b196ee3b691fe7c81 Mon Sep 17 00:00:00 2001 From: Christopher Faulet Date: Fri, 15 Nov 2019 09:41:32 +0100 Subject: [PATCH] BUG/MINOR: mux-h1: Don't set CS_FL_EOS on a read0 when receiving data to pipe This is mandatory to process input one more time to add the EOM in the HTX message and to set CS_FL_EOI on the conn-stream. Otherwise, in the stream, a SHUTR will be reported on the corresponding channel without the EOI. It may be erroneously interpreted as an abort. This patch must be backported to 2.0 and 1.9. --- src/mux_h1.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/mux_h1.c b/src/mux_h1.c index 4a254ddb9..7264bfa7f 100644 --- a/src/mux_h1.c +++ b/src/mux_h1.c @@ -2699,8 +2699,6 @@ static int h1_rcv_pipe(struct conn_stream *cs, struct pipe *pipe, unsigned int c if (conn_xprt_read0_pending(cs->conn)) { h1s->flags |= H1S_F_REOS; TRACE_STATE("read0 on connection", H1_EV_STRM_RECV, cs->conn, h1s); - if (!pipe->data) - cs->flags |= CS_FL_EOS; } TRACE_LEAVE(H1_EV_STRM_RECV, cs->conn, h1s);