From: Willy Tarreau Date: Mon, 11 May 2026 12:58:45 +0000 (+0200) Subject: BUG/MINOR: http-fetch: make http_first_req() check for HTTP first X-Git-Url: http://www.kaiwu.me/postgresql/commit/?a=commitdiff_plain;h=8941cc5f6db3b86ef68d88f7305acc82069887b4;p=haproxy.git BUG/MINOR: http-fetch: make http_first_req() check for HTTP first smp_fetch_http_first_req() reads ->txn.http->flags without first checking if txn.http is properly allocated. In theory if called from the wrong context it could crash, even though tests where it's called from "tcp-request content" don't seem to have any effect. Let's fix it regardless, at least to dissipate the doubt. It can be backported everywhere. --- diff --git a/src/http_fetch.c b/src/http_fetch.c index b030509d5..3a7ca3c5c 100644 --- a/src/http_fetch.c +++ b/src/http_fetch.c @@ -1355,7 +1355,7 @@ static int smp_fetch_proto_http(const struct arg *args, struct sample *smp, cons /* return a valid test if the current request is the first one on the connection */ static int smp_fetch_http_first_req(const struct arg *args, struct sample *smp, const char *kw, void *private) { - if (!smp->strm) + if (!smp->strm || !smp->strm->txn.http) return 0; smp->data.type = SMP_T_BOOL;