]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MINOR: stats: Don't state the 303 redirect response is chunked
authorChristopher Faulet <cfaulet@haproxy.com>
Fri, 17 May 2024 13:42:46 +0000 (15:42 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Fri, 17 May 2024 14:33:53 +0000 (16:33 +0200)
Start-line flags for 303-See-Other response returned by the stats applet are
not properly set. Indeed, the reponse has a "content-length" header but both
HTX_SL_F_CHNK and HTX_SL_F_CLEN flags are set. Because of this bug, the
reponse is considered as chunked. So, let's remove HTX_SL_F_CHNK flag.

And also add HTX_SL_F_BODYLESS flag because there is no payload
("content-length" header is always set to 0).

This patch must be backported to all stable versions. On the 2.8 and lower
versions, the commit d0b04920d1 ("BUG/MINOR: htpp-ana/stats: Specify that
HTX redirect messages have a C-L header") must be backported first.

src/stats-html.c

index 367222976718eaa8ee293740279fa03a6065a883..41eaa9e896272c9e329b5687e37f2acfec276823 100644 (file)
@@ -1571,7 +1571,7 @@ static int stats_send_http_redirect(struct stconn *sc, struct htx *htx)
                     (ctx->flags & STAT_F_NO_REFRESH) ? ";norefresh" : "",
                     scope_txt);
 
-       flags = (HTX_SL_F_IS_RESP|HTX_SL_F_VER_11|HTX_SL_F_XFER_LEN|HTX_SL_F_CLEN|HTX_SL_F_CHNK);
+       flags = (HTX_SL_F_IS_RESP|HTX_SL_F_VER_11|HTX_SL_F_XFER_LEN|HTX_SL_F_CLEN|HTX_SL_F_BODYLESS);
        sl = htx_add_stline(htx, HTX_BLK_RES_SL, flags, ist("HTTP/1.1"), ist("303"), ist("See Other"));
        if (!sl)
                goto full;