From: William Lallemand Date: Wed, 16 Feb 2022 10:37:02 +0000 (+0100) Subject: BUG/MINOR: httpclient/cli: display junk characters in vsn X-Git-Tag: v2.6-dev2~124 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=de6ecc3aceaf93612eb37ff5a913fcd8e741ea67;p=thirdparty%2Fhaproxy.git BUG/MINOR: httpclient/cli: display junk characters in vsn ist are not ended by '\0', leading to junk characters being displayed when using %s for printing the HTTP start line. Fix the issue by replacing %s by %.*s + istlen. Must be backported in 2.5. --- diff --git a/src/http_client.c b/src/http_client.c index 6645a49466..dacc326be6 100644 --- a/src/http_client.c +++ b/src/http_client.c @@ -173,7 +173,8 @@ static int hc_cli_io_handler(struct appctx *appctx) if (!trash) goto out; if (appctx->ctx.cli.i0 & HC_CLI_F_RES_STLINE) { - chunk_appendf(trash, "%s %d %s\n",istptr(hc->res.vsn), hc->res.status, istptr(hc->res.reason)); + chunk_appendf(trash, "%.*s %d %.*s\n", (unsigned int)istlen(hc->res.vsn), istptr(hc->res.vsn), + hc->res.status, (unsigned int)istlen(hc->res.reason), istptr(hc->res.reason)); if (ci_putchk(si_ic(si), trash) == -1) si_rx_room_blk(si); appctx->ctx.cli.i0 &= ~HC_CLI_F_RES_STLINE;