]> git.kaiwu.me - haproxy.git/commitdiff
BUG/MINOR: resolvers: Fix lookup for a hostname in the state-file tree
authorChristopher Faulet <cfaulet@haproxy.com>
Mon, 4 May 2026 12:53:58 +0000 (14:53 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Mon, 4 May 2026 14:33:56 +0000 (16:33 +0200)
In resolv_check_response(), the condition 'if (!srvrq->named_servers)' was
inverted - it ran the named server lookup when the tree was empty/NULL
instead of when it was populated. This prevented proper hostname-based
matching of SRV records to servers from the state file.

The issue was introduced when tree of servers was replaced by a cebis tree
(fdf6fd5b45).

This patch must be backported to 3.3.

src/resolvers.c

index 7049ca8d6dd0ae6b54905b7a2adb29d712253059..de93fea1a19e3641e53a90c8efb3976c5eec4561 100644 (file)
@@ -864,7 +864,7 @@ static void resolv_check_response(struct resolv_resolution *res)
                        /* If not empty we try to match a server
                         * in server state file tree with the same hostname
                         */
-                       if (!srvrq->named_servers) {
+                       if (srvrq->named_servers) {
                                srv = NULL;
 
                                /* convert the key to lookup in lower case */