From f73eb7e30a8a55c3934a2e5e0d0d30cf8bf44c09 Mon Sep 17 00:00:00 2001 From: Wolfgang Breyha Date: Thu, 2 Jan 2020 13:16:52 +0000 Subject: [PATCH 1/1] SPF: handle DNS NO_DATA return. Bug 2499 --- src/src/spf.c | 1 + test/scripts/4600-SPF/4601 | 1 + test/stdout/4601 | 1 + 3 files changed, 3 insertions(+) diff --git a/src/src/spf.c b/src/src/spf.c index 1015d77ac..a8318dcda 100644 --- a/src/src/spf.c +++ b/src/src/spf.c @@ -77,6 +77,7 @@ switch (dns_rc = dns_lookup(dnsa, US domain, rr_type, NULL)) case DNS_SUCCEED: srr.herrno = NETDB_SUCCESS; break; case DNS_AGAIN: srr.herrno = TRY_AGAIN; break; case DNS_NOMATCH: srr.herrno = HOST_NOT_FOUND; break; + case DNS_NODATA: srr.herrno = NO_DATA; break; case DNS_FAIL: default: srr.herrno = NO_RECOVERY; break; } diff --git a/test/scripts/4600-SPF/4601 b/test/scripts/4600-SPF/4601 index 77258a8e8..96f06a6d1 100644 --- a/test/scripts/4600-SPF/4601 +++ b/test/scripts/4600-SPF/4601 @@ -30,6 +30,7 @@ killdaemon # - and not crash with non-spf txt records # v=spf1 is casr-insensitive exim -be +none ${lookup {fred@v6.test.ex} spf {HOSTIPV4}} temperror ${lookup {fred@test.again.dns} spf {HOSTIPV4}} permerror ${lookup {fred@double.example.com} spf {8.8.8.8}} permerror ${lookup {fred@doubleplus.example.com} spf {8.8.8.8}} diff --git a/test/stdout/4601 b/test/stdout/4601 index de4df33ae..cbb4cf502 100644 --- a/test/stdout/4601 +++ b/test/stdout/4601 @@ -26,6 +26,7 @@ Connecting to 127.0.0.1 port 1224 ... connected <<< 250 Accepted >>> quit End of script +> none none > temperror temperror > permerror permerror > permerror permerror -- 2.30.2