]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MINOR: mux-fcgi: Set flags on the right stream field for empty FCGI_STDOUT
authorChristopher Faulet <cfaulet@haproxy.com>
Wed, 15 Jul 2020 14:04:49 +0000 (16:04 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Wed, 15 Jul 2020 14:04:51 +0000 (16:04 +0200)
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.

src/mux_fcgi.c

index efe5d54656a030fb96a2220589244601000ee813..571401dd87f59c89aea692ebe89a8fdfafd52c96 100644 (file)
@@ -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);