From: Christopher Faulet Date: Tue, 8 Oct 2019 09:59:47 +0000 (+0200) Subject: BUG/MINOR: mux-h1/mux-fcgi/trace: Fix position of the 4th arg in some traces X-Git-Tag: v2.1-dev3~135 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=08618a733d8e93cc60741201c38316420a7728fd;p=thirdparty%2Fhaproxy.git BUG/MINOR: mux-h1/mux-fcgi/trace: Fix position of the 4th arg in some traces In these muxes, when an integer value is provided in a trace, it must be the 4th argument. The 3rd one, if defined, is always an HTX message. Unfortunately, some traces are buggy and the 4th argument is erroneously passed in 3rd position. No backport needed. --- diff --git a/src/mux_fcgi.c b/src/mux_fcgi.c index 681669c51b..ed8b3def52 100644 --- a/src/mux_fcgi.c +++ b/src/mux_fcgi.c @@ -1612,17 +1612,17 @@ static int fcgi_conn_handle_values_result(struct fcgi_conn *fconn) if (isteqi(p.n, ist("FCGI_MPXS_CONNS"))) { if (isteq(p.v, ist("1"))) { - TRACE_STATE("set mpxs param", FCGI_EV_RX_RECORD|FCGI_EV_RX_GETVAL, fconn->conn,, (size_t[]){1}); + TRACE_STATE("set mpxs param", FCGI_EV_RX_RECORD|FCGI_EV_RX_GETVAL, fconn->conn,,, (size_t[]){1}); fconn->flags |= FCGI_CF_MPXS_CONNS; } else { - TRACE_STATE("set mpxs param", FCGI_EV_RX_RECORD|FCGI_EV_RX_GETVAL, fconn->conn,, (size_t[]){0}); + TRACE_STATE("set mpxs param", FCGI_EV_RX_RECORD|FCGI_EV_RX_GETVAL, fconn->conn,,, (size_t[]){0}); fconn->flags &= ~FCGI_CF_MPXS_CONNS; } } else if (isteqi(p.n, ist("FCGI_MAX_REQS"))) { fconn->streams_limit = strl2ui(p.v.ptr, p.v.len); - TRACE_STATE("set streams_limit", FCGI_EV_RX_RECORD|FCGI_EV_RX_GETVAL, fconn->conn,, (size_t[]){fconn->streams_limit}); + TRACE_STATE("set streams_limit", FCGI_EV_RX_RECORD|FCGI_EV_RX_GETVAL, fconn->conn,,, (size_t[]){fconn->streams_limit}); } /* * Ignore all other params @@ -2369,7 +2369,7 @@ static int fcgi_strm_handle_stderr(struct fcgi_conn *fconn, struct fcgi_strm *fs if (!ret) goto fail; fconn->drl -= ret; - TRACE_PROTO("FCGI STDERR record rcvd", FCGI_EV_RX_RECORD|FCGI_EV_RX_STDERR, fconn->conn, fstrm, (size_t[]){ret}); + TRACE_PROTO("FCGI STDERR record rcvd", FCGI_EV_RX_RECORD|FCGI_EV_RX_STDERR, fconn->conn, fstrm,, (size_t[]){ret}); trash.area[ret] = '\n'; trash.area[ret+1] = '\0'; diff --git a/src/mux_h1.c b/src/mux_h1.c index 6bf6d3c95d..b09b1b9d4a 100644 --- a/src/mux_h1.c +++ b/src/mux_h1.c @@ -1553,10 +1553,10 @@ static size_t h1_process_output(struct h1c *h1c, struct buffer *buf, size_t coun total += count; if (h1m->state == H1_MSG_DATA) TRACE_PROTO((!(h1m->flags & H1_MF_RESP) ? "H1 request payload data xferred" : "H1 response payload data xferred"), - H1_EV_TX_DATA|H1_EV_TX_BODY, h1c->conn, h1s, (size_t[]){count}); + H1_EV_TX_DATA|H1_EV_TX_BODY, h1c->conn, h1s,, (size_t[]){count}); else TRACE_PROTO((!(h1m->flags & H1_MF_RESP) ? "H1 request tunneled data xferred" : "H1 response tunneled data xferred"), - H1_EV_TX_DATA|H1_EV_TX_BODY, h1c->conn, h1s, (size_t[]){count}); + H1_EV_TX_DATA|H1_EV_TX_BODY, h1c->conn, h1s,, (size_t[]){count}); goto out; } tmp.area = h1c->obuf.area + h1c->obuf.head; @@ -1779,10 +1779,10 @@ static size_t h1_process_output(struct h1c *h1c, struct buffer *buf, size_t coun if (h1m->state == H1_MSG_DATA) TRACE_PROTO((!(h1m->flags & H1_MF_RESP) ? "H1 request payload data xferred" : "H1 response payload data xferred"), - H1_EV_TX_DATA|H1_EV_TX_BODY, h1c->conn, h1s, (size_t[]){v.len}); + H1_EV_TX_DATA|H1_EV_TX_BODY, h1c->conn, h1s,, (size_t[]){v.len}); else TRACE_PROTO((!(h1m->flags & H1_MF_RESP) ? "H1 request tunneled data xferred" : "H1 response tunneled data xferred"), - H1_EV_TX_DATA|H1_EV_TX_BODY, h1c->conn, h1s, (size_t[]){v.len}); + H1_EV_TX_DATA|H1_EV_TX_BODY, h1c->conn, h1s,, (size_t[]){v.len}); break; case H1_MSG_TRAILERS: