Mercurial > notdcc
diff misc/dccdnsbl.m4 @ 0:c7f6b056b673
First import of vendor version
author | Peter Gervai <grin@grin.hu> |
---|---|
date | Tue, 10 Mar 2009 13:49:58 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/misc/dccdnsbl.m4 Tue Mar 10 13:49:58 2009 +0100 @@ -0,0 +1,55 @@ +divert(-1) + +############################################################################ +# NOTICE: Unless your version of sendmail is ancient, use the standard +# sendmail `FEATURE(dnsbl)' or `FEATURE(enhdnsbl)' and the hackmc script +# in the DCC source instead of this sendmail `FEATURE' file. +############################################################################ + + +# Connect a DNS blacklist such as the RBL+ to the local DCCM daemon and so to +# a DCC server to report spam to the DCC database. +# The connection is by the sendmail "dcc_isspam" macro +# +# The first and required argument is the domain name of the DNS blacklist +# The second, optional argument is a log and SMTP status/rejection message. +# +# For example, with the following, mail from SMTP clients on the +# relays.mail-abuse.org list would be rejected as well as reported as +# extremely bulky to the DCC server: +# `FEATURE(dccdnsbl, `zen.spamhaus.org', `"Mail from " $`'&{client_addr} " reject to DCC - see http://www.spamhaus.org/zen/"')' +# +# (Of course, the outer pair of `' quotes must be removed) +# +# The `FEATURE(dccdnsbl)' line should be after the `FEATURE(dcc)' line +# if the latter is present. +# +# If you see error messages from sendmail like "map macro not found", check +# for the Kmacro definition in cf/m4/proto.m4 and consider the "dnl" comments +# below. + +divert(0) +VERSIONID(`dccdnsbl.m4 Rhyolite Software DCC 1.3.103-1.18 $Revision$') +divert(-1) + +define(`_DCCDNSBL_SRV_', ifelse(len(X`'_ARG_),`1',`blackholes.mail-abuse.org',`_ARG_')) +define(`_DCCDNSBL_MSG_', ifelse(len(X`'_ARG2_),`1',`"Mail from " $`'&{client_addr} " refused by blackhole site '_DCCDNSBL_SRV_`"',`_ARG2_')) + +dnl Remove the "dnl " strings (including the blanks) from the following 5 lines +dnl up to the divert(8) line if your version of sendmail does not include +dnl the Kmacro line by default. +dnl ifdef(`_DCCDNSBL_DEF_',`dnl',`dnl +dnl define(_DCCDNSBL_DEF_, 1)dnl +dnl LOCAL_CONFIG +dnl `# define macros map to communicate DNS black list results to DCC via dccm' +dnl Kmacro macro') +divert(8) +# DNS based IP address spam list _DCCDNSBL_SRV_ connected to DCCM +R$* $: $&{client_addr} +R$-.$-.$-.$- $: <?> $(host $4.$3.$2.$1._DCCDNSBL_SRV_. $: OK $) +R<?>OK $: OKSOFAR +R<?>$+<TMP> $: TMPOK +R<?>$+ $@ $(macro {dcc_isspam} $@ _DCCDNSBL_MSG_ $) TODCC +divert(-1) + +ifdef(`_DCC_DEF_',`',`FEATURE(`dcc')')dnl