]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MINOR: resolvers: Don't overwrite the error for invalid query domain name
authorChristopher Faulet <cfaulet@haproxy.com>
Thu, 2 Dec 2021 09:05:02 +0000 (10:05 +0100)
committerChristopher Faulet <cfaulet@haproxy.com>
Thu, 2 Dec 2021 09:05:04 +0000 (10:05 +0100)
When a response is validated, the query domain name is checked to be sure it
is the same than the one requested. When an error is reported, the wrong
goto label was used. Thus, the error was lost. Instead of
RSLV_RESP_WRONG_NAME, RSLV_RESP_INVALID was reported.

This bug was introduced by the commit c1699f8c1 ("MEDIUM: resolvers: No
longer store query items in a list into the response").

This patch should fix the issue #1473. No backport is needed.

src/resolvers.c

index 3090cb4a0017456e8d9e5a8da37dfdc8805d30df..ec187aa3073bf54f130419e52fc54488a3a144f9 100644 (file)
@@ -1004,7 +1004,7 @@ static int resolv_validate_dns_response(unsigned char *resp, unsigned char *bufe
        if (len != resolution->hostname_dn_len ||
            memcmp(query->name, resolution->hostname_dn, resolution->hostname_dn_len) != 0) {
                cause = RSLV_RESP_WRONG_NAME;
-               goto invalid_resp;
+               goto return_error;
        }
 
        reader += offset;