From 37daeffac123f8a0f33d929060f07a75add91b30 Mon Sep 17 00:00:00 2001 From: Christopher Faulet Date: Wed, 15 Jul 2020 16:04:49 +0200 Subject: [PATCH] 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. (cherry picked from commit 3b3096ede1b52007fa49a563436df8ee9323d78c) Signed-off-by: Willy Tarreau (cherry picked from commit ca5e8c058e157ee7d549014705e23e3be6fc505c) Signed-off-by: Christopher Faulet --- src/mux_fcgi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mux_fcgi.c b/src/mux_fcgi.c index 57cfdf8..6df5353 100644 --- a/src/mux_fcgi.c +++ b/src/mux_fcgi.c @@ -2353,7 +2353,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); -- 1.7.10.4