aboutsummaryrefslogtreecommitdiffstats
path: root/src/libserver/spf.c
diff options
context:
space:
mode:
authorAndrew Lewis <nerf@judo.za.org>2016-09-26 11:39:25 +0200
committerAndrew Lewis <nerf@judo.za.org>2016-09-26 11:39:25 +0200
commit18b3d066748baff20608adfa2270c50a40704c88 (patch)
tree009c73d1fac0eb8d1e6d721aee641d150330481d /src/libserver/spf.c
parentaa4e6f0e09a45d0e82be4d495e97a7c9eb7342a8 (diff)
downloadrspamd-18b3d066748baff20608adfa2270c50a40704c88.tar.gz
rspamd-18b3d066748baff20608adfa2270c50a40704c88.zip
[Minor] Fix SPF PERMFAIL/DNSFAIL behaviour on failed redirect
Diffstat (limited to 'src/libserver/spf.c')
-rw-r--r--src/libserver/spf.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libserver/spf.c b/src/libserver/spf.c
index c0ca38e15..41f31bfb0 100644
--- a/src/libserver/spf.c
+++ b/src/libserver/spf.c
@@ -332,6 +332,10 @@ rspamd_spf_process_reference (struct spf_resolved *target,
target->temp_failed = TRUE;
continue;
}
+ if (cur->flags & RSPAMD_SPF_FLAG_PERMFAIL) {
+ target->perm_failed = TRUE;
+ continue;
+ }
if (cur->flags & RSPAMD_SPF_FLAG_NA) {
target->na = TRUE;
continue;
@@ -734,7 +738,7 @@ spf_record_dns_callback (struct rdns_reply *reply, gpointer arg)
task->message_id,
cb->rec->sender_domain,
cb->resolved->cur_domain);
- cb->addr->flags &= ~RSPAMD_SPF_FLAG_PARSED;
+ cb->addr->flags |= RSPAMD_SPF_FLAG_PERMFAIL;
break;
case SPF_RESOLVE_INCLUDE:
msg_debug_spf (