]> source.dussan.org Git - rspamd.git/commitdiff
[Fix] Yield R_SPF_DNSFAIL if lookup of included record fails
authorAndrew Lewis <nerf@judo.za.org>
Wed, 21 Sep 2016 12:55:08 +0000 (14:55 +0200)
committerAndrew Lewis <nerf@judo.za.org>
Wed, 21 Sep 2016 14:59:25 +0000 (16:59 +0200)
src/libserver/spf.c
src/plugins/spf.c

index a4870f294e464e0a3615e18407439836246a11e1..95bcc762837550f288ef56703d4c847acac0e5e0 100644 (file)
@@ -729,6 +729,7 @@ spf_record_dns_callback (struct rdns_reply *reply, gpointer arg)
                                                cb->rec->sender_domain,
                                                cb->resolved->cur_domain);
                                cb->addr->flags &= ~RSPAMD_SPF_FLAG_PARSED;
+                               cb->addr->flags |= RSPAMD_SPF_FLAG_TEMPFAIL;
                                break;
                        case SPF_RESOLVE_EXP:
                                break;
index bc05cd9fea13d77ce1150e9bfdc4e95abf57ea75..6d5517db92139fc252c620a711f5ca4ab9ef6168 100644 (file)
@@ -442,7 +442,7 @@ spf_plugin_callback (struct spf_resolved *record, struct rspamd_task *task,
        struct spf_resolved *l;
        struct rspamd_async_watcher *w = ud;
 
-       if (record && record->elts->len == 0) {
+       if (record && record->elts->len == 0 && !record->failed) {
                rspamd_task_insert_result (task,
                                spf_module_ctx->symbol_na,
                                1,