mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-21 13:51:26 +02:00
BUG/MINOR: resolvers: Use a null-terminated string to lookup in servers tree
When we evaluate a DNS response item, it may be necessary to look for a server with a hostname matching the item target into the named servers tree. To do so, the item target is transformed to a lowercase string. It must be a null-terminated string. Thus we must explicitly set the trailing '\0' character. For a specific resolution, the named servers tree contains all servers using this resolution with a hostname loaded from a state file. Because of this bug, same entry may be duplicated because we are unable to find the right server, assigning this way the item to a free server slot. This patch should fix the issue #1333. It must be backported as far as 2.2.
This commit is contained in:
parent
b3c4a8f59d
commit
1f923391d1
@ -694,6 +694,7 @@ static void resolv_check_response(struct resolv_resolution *res)
|
||||
/* convert the key to lookup in lower case */
|
||||
for (i = 0 ; item->target[i] ; i++)
|
||||
target[i] = tolower(item->target[i]);
|
||||
target[i] = 0;
|
||||
|
||||
node = ebis_lookup(&srvrq->named_servers, target);
|
||||
if (node) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user