BUG/MINOR: httpclient-cli: Don't try to dump raw headers in HTX mode

In the CLI I/O handler interacting with the HTTP client, we must not try to
push raw headers in HTX mode, because there is no raw data in this
mode. This prevent the HTX dump at the end of the I/O handle.

It is a 3.3-specific issue. No backport needed.
This commit is contained in:
Christopher Faulet 2025-07-22 15:17:50 +02:00
parent 1adc8a5c62
commit 094a542634

View File

@ -197,8 +197,8 @@ static int hc_cli_io_handler(struct appctx *appctx)
} }
if (ctx->flags & HC_F_RES_HDR) { if (ctx->flags & HC_F_RES_HDR) {
chunk_reset(&trash);
if (!ctx->is_htx) { if (!ctx->is_htx) {
chunk_reset(&trash);
hdrs = hc->res.hdrs; hdrs = hc->res.hdrs;
for (hdr = hdrs; isttest(hdr->v); hdr++) { for (hdr = hdrs; isttest(hdr->v); hdr++) {
if (!h1_format_htx_hdr(hdr->n, hdr->v, &trash)) if (!h1_format_htx_hdr(hdr->n, hdr->v, &trash))
@ -206,9 +206,9 @@ static int hc_cli_io_handler(struct appctx *appctx)
} }
if (!chunk_memcat(&trash, "\r\n", 2)) if (!chunk_memcat(&trash, "\r\n", 2))
goto too_many_hdrs; goto too_many_hdrs;
}
if (applet_putchk(appctx, &trash) == -1) if (applet_putchk(appctx, &trash) == -1)
goto more; goto more;
}
ctx->flags &= ~HC_F_RES_HDR; ctx->flags &= ~HC_F_RES_HDR;
} }