X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fsrc%2Fspf.c;h=a203c07baa8b0d70ed4fdb9737f1131d1733a300;hb=9c5e54499afef5167bee6ecdcbf8dd5f023f51e0;hp=9fdc0baec8ff4d0ae03d30ab3506bae5ecd6f2f0;hpb=f9ba5e2255cf18092750fffacb6a9603571a2be5;p=user%2Fhenk%2Fcode%2Fexim.git diff --git a/src/src/spf.c b/src/src/spf.c index 9fdc0baec..a203c07ba 100644 --- a/src/src/spf.c +++ b/src/src/spf.c @@ -22,8 +22,6 @@ static spf_result_id spf_result_id_list[] = { { US"fail", 3 }, { US"softfail", 4 }, { US"none", 5 }, - { US"err_temp", 6 }, /* Deprecated Apr 2014 */ - { US"err_perm", 7 }, /* Deprecated Apr 2014 */ { US"temperror", 6 }, /* RFC 4408 defined */ { US"permerror", 7 } /* RFC 4408 defined */ }; @@ -112,7 +110,10 @@ else { /* get SPF result */ if (action == SPF_PROCESS_FALLBACK) + { SPF_request_query_fallback(spf_request, &spf_response, CS spf_guess); + spf_result_guessed = TRUE; + } else SPF_request_query_mailfrom(spf_request, &spf_response); @@ -146,4 +147,23 @@ while ((spf_result_id = string_nextinlist(&list, &sep, NULL, 0))) return FAIL; } + + +gstring * +authres_spf(gstring * g) +{ +uschar * s; +if (!spf_result) return g; + +g = string_append(g, 2, US";\n\tspf=", spf_result); +if (spf_result_guessed) + g = string_cat(g, US" (best guess record for domain)"); + +s = expand_string(US"$sender_address_domain"); +return s && *s + ? string_append(g, 2, US" smtp.mailfrom=", s) + : string_cat(g, US" smtp.mailfrom=<>"); +} + + #endif