1 |
divert(-1) |
2 |
# |
3 |
# Written 2004 Teddy |
4 |
# |
5 |
# Checks the SPF records of sending domain |
6 |
# |
7 |
divert(0) |
8 |
ifdef(`_SPF_',`dnl',`dnl |
9 |
VERSIONID(`$Id: spf.m4,v 1.1.1.1 2004/08/28 17:53:34 jcouzens Exp $') |
10 |
divert(-1) |
11 |
define(`_SPF_',`')')dnl |
12 |
define(`confSPFAction',ifelse(len(X`'_ARG_),`1',`1',_ARG_))dnl |
13 |
define(`confSPFHeaderState',ifelse(len(X`'_ARG2_),`1',`True',_ARG2_))dnl |
14 |
define(`confSPFBestGuessState',ifelse(len(X`'_ARG3_),`1',`0',_ARG3_))dnl |
15 |
define(`confSPFTrustedForwarderState',ifelse(len(X`'_ARG4_),`1',`0',_ARG4_))dnl |
16 |
define(`confSPFExplainState',ifelse(len(X`'_ARG5_),`1',`True',_ARG5_))dnl |
17 |
define(`confSPFBestGuess',ifelse(len(X`'_ARG6_),`1',`v=spf1 a/24 mx/24 ptr',_ARG6_))dnl |
18 |
define(`confSPFTrustedForwarder',ifelse(len(X`'_ARG7_),`1',`v=spf1 include:spf.trusted-forwarder.org',_ARG7_))dnl |
19 |
define(`confSPFExplain',ifelse(len(X`'_ARG8_),`1',`See http://spf.pobox.com/why.html?sender=%{S}&ip=%{I}&receiver=%{xR}',_ARG8_))dnl |
20 |
divert(8) |
21 |
# Checks the SPF records of sending domain |
22 |
R$* $: $1 $| <?>$&{spfreject}<?> |
23 |
R$* $| <?>1<?> $#error $@ 5.7.1 $: "550 Mail from [" $&{client_addr} "] Rejected. " $&{spfexplain} |
24 |
R$* $| <?>$* $: $1 |
25 |
divert(-1) |