From: Christopher Faulet Date: Wed, 15 Jul 2020 14:04:49 +0000 (+0200) Subject: BUG/MINOR: mux-fcgi: Set flags on the right stream field for empty FCGI_STDOUT X-Git-Tag: v2.3-dev1~15 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3b3096ede1b52007fa49a563436df8ee9323d78c;p=thirdparty%2Fhaproxy.git BUG/MINOR: mux-fcgi: Set flags on the right stream field for empty FCGI_STDOUT In fcgi_strm_handle_empty_stdout(), the FCGI_SF_ES_RCVD flag is set on "->state" stream field instead of "->flags". It is obviously wrong. This bug is not noticeable because the right state is set in the fcgi_process_demux() function a bit later. This patch must be backported as far as 2.1. --- diff --git a/src/mux_fcgi.c b/src/mux_fcgi.c index efe5d54656..571401dd87 100644 --- a/src/mux_fcgi.c +++ b/src/mux_fcgi.c @@ -2336,7 +2336,7 @@ static int fcgi_strm_handle_empty_stdout(struct fcgi_conn *fconn, struct fcgi_st return 0; } fconn->state = FCGI_CS_RECORD_H; - fstrm->state |= FCGI_SF_ES_RCVD; + fstrm->flags |= FCGI_SF_ES_RCVD; TRACE_PROTO("FCGI STDOUT record rcvd", FCGI_EV_RX_RECORD|FCGI_EV_RX_STDOUT, fconn->conn, fstrm,, (size_t[]){0}); TRACE_STATE("stdout data fully send, switching to RECORD_H", FCGI_EV_RX_RECORD|FCGI_EV_RX_FHDR|FCGI_EV_RX_EOI, fconn->conn, fstrm); TRACE_LEAVE(FCGI_EV_RX_RECORD|FCGI_EV_RX_STDOUT, fconn->conn, fstrm);