summaryrefslogtreecommitdiffstats
path: root/src/libserver/spf.c
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2016-03-29 13:00:33 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2016-03-29 13:00:33 +0100
commitb646ba7e23947356a0786ec2e60d8e4ec955b807 (patch)
tree907f135f15e4eae70798655a7d94b2fba878a733 /src/libserver/spf.c
parentfb6e9f73f4b26fff517784e820d4896020f49c40 (diff)
downloadrspamd-b646ba7e23947356a0786ec2e60d8e4ec955b807.tar.gz
rspamd-b646ba7e23947356a0786ec2e60d8e4ec955b807.zip
[Fix] Fix parsing of include/redirect with many records in SPF
Diffstat (limited to 'src/libserver/spf.c')
-rw-r--r--src/libserver/spf.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libserver/spf.c b/src/libserver/spf.c
index 7f404efb4..036990248 100644
--- a/src/libserver/spf.c
+++ b/src/libserver/spf.c
@@ -617,6 +617,8 @@ spf_record_dns_callback (struct rdns_reply *reply, gpointer arg)
cb->addr->flags &= ~RSPAMD_SPF_FLAG_PARSED;
}
}
+
+ goto end;
break;
case SPF_RESOLVE_INCLUDE:
if (elt_data->type == RDNS_REQUEST_TXT) {
@@ -627,6 +629,8 @@ spf_record_dns_callback (struct rdns_reply *reply, gpointer arg)
cb->addr->flags &= ~RSPAMD_SPF_FLAG_PARSED;
}
}
+ goto end;
+
break;
case SPF_RESOLVE_EXP:
break;
@@ -709,6 +713,7 @@ spf_record_dns_callback (struct rdns_reply *reply, gpointer arg)
rdns_strerror (reply->code));
}
+end:
rspamd_spf_maybe_return (cb->rec);
}