BUG/MINOR: http-check: Don't pretend a C-L heeader is set before adding it
authorChristopher Faulet <cfaulet@haproxy.com>
Mon, 3 Feb 2025 17:36:17 +0000 (18:36 +0100)
committerWilly Tarreau <w@1wt.eu>
Wed, 19 Feb 2025 10:43:06 +0000 (11:43 +0100)
commitd5ca78b83d7bfddd107e3243a6ff785dc92b9157
tree5727f5f3226fb249ccabf6fc5f4e9fe70df0b1c4
parentba7be506130d5b6554f6db1fead55dde97bc14dd
BUG/MINOR: http-check: Don't pretend a C-L heeader is set before adding it

When a GET/HEAD/OPTIONS/DELETE healthcheck request was formatted, we claimed
there was a "content-length" header set even when there was no payload,
leading to actually send a "content-length: 0" header to the server. It was
unexpected and could be rejected by servers.

When a healthcheck request is sent we must take care to state there is a
"content-length" header when it is explicitly added.

This patch should fix the issue #2851. It must be backported as far as 2.9.

(cherry picked from commit fad68cb16d7f99acd2b327ff2f8a4d9ab88a68d8)
Signed-off-by: Willy Tarreau <w@1wt.eu>
src/tcpcheck.c