aboutsummaryrefslogtreecommitdiffstats
path: root/src/libserver
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@rspamd.com>2022-08-26 22:30:18 +0100
committerVsevolod Stakhov <vsevolod@rspamd.com>2022-08-26 22:31:00 +0100
commit379ed84da218ace36a4a443fdac6f89e987bcfe0 (patch)
tree1337f70eff1267c847d28ba7195ff08a5da90d33 /src/libserver
parent21694b896193c6ebb7a7d554e91524c1007afd36 (diff)
downloadrspamd-379ed84da218ace36a4a443fdac6f89e987bcfe0.tar.gz
rspamd-379ed84da218ace36a4a443fdac6f89e987bcfe0.zip
[Fix] Skip cname records when processing SPF records
Diffstat (limited to 'src/libserver')
-rw-r--r--src/libserver/spf.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/libserver/spf.c b/src/libserver/spf.c
index 8f7a596d9..eb7477129 100644
--- a/src/libserver/spf.c
+++ b/src/libserver/spf.c
@@ -882,6 +882,11 @@ spf_record_dns_callback (struct rdns_reply *reply, gpointer arg)
rec->ttl = elt_data->ttl;
}
+ if (elt_data->type == RDNS_REQUEST_CNAME) {
+ /* Skip cname aliases - it must be handled by a recursor */
+ continue;
+ }
+
switch (cb->cur_action) {
case SPF_RESOLVE_MX:
if (elt_data->type == RDNS_REQUEST_MX) {
@@ -984,6 +989,10 @@ spf_record_dns_callback (struct rdns_reply *reply, gpointer arg)
req_name->name,
selected->content.txt.data);
}
+ else {
+ msg_debug_spf ("no include record for %s",
+ req_name->name);
+ }
}
goto end;