BUG/MEDIUM: http-htx: Loop on full host value during scheme based normalization

During scheme based normalization, when the authority is normalized, the
host headers are updated accordingly. Only full host header values must be
updated. Comma-separated list are not expected here.

It is important to do so to be consistant with other places where the host
header is updated (when the request URI is changed for instance).
This commit is contained in:
Christopher Faulet 2026-04-28 11:34:36 +02:00
parent 632b54ebfc
commit 8d2ea3c1ce

View File

@ -1886,9 +1886,9 @@ int http_scheme_based_normalize(struct htx *htx)
http_replace_stline(htx, meth, uri, vsn);
/* replace every host headers values by the normalized host */
/* replace every host headers by the normalized host */
ctx.blk = NULL;
while (http_find_header(htx, ist("host"), &ctx, 0)) {
while (http_find_header(htx, ist("host"), &ctx, 1)) {
if (!http_replace_header_value(htx, &ctx, host)) {
free_trash_chunk(temp);
goto fail;