mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-15 16:04:37 +00:00
BUG/MINOR: http_fetch: make hdr_ip() resistant to empty fields
The fix in commit 7b0e00d94
("BUG/MINOR: http_fetch: make hdr_ip() reject
trailing characters") made hdr_ip() more sensitive to empty fields, for
example if a trusted proxy incorrectly sends the header with an empty
value, we could return 0.0.0.0 which is not correct. Let's make sure we
only assign an IPv4 type here when a non-empty address was found.
This should be backported to all branches where the fix above was
backported.
This commit is contained in:
parent
4bfc6630ba
commit
645dc08533
@ -1004,7 +1004,7 @@ static int smp_fetch_hdr_ip(const struct arg *args, struct sample *smp, const ch
|
||||
smp->data.u.str.data);
|
||||
temp->area[smp->data.u.str.data] = '\0';
|
||||
len = url2ipv4((char *) temp->area, &smp->data.u.ipv4);
|
||||
if (len == smp->data.u.str.data) {
|
||||
if (len > 0 && len == smp->data.u.str.data) {
|
||||
/* plain IPv4 address */
|
||||
smp->data.type = SMP_T_IPV4;
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user