[Mimedefang] MIMEDefang, milter-greylist and access.db

vdu at yopmail.com vdu at yopmail.com
Fri Jul 6 05:05:26 EDT 2007


Hi,

I'm setting up mimedefang, all is great, but I still have a problem :

I whould like to skip mimedefang for all sender IP which is marked as
RELAY in sendmail's access db. As I'm also using milter-greylist, I've
added these lines to my sendmail.mc (read from milter-greylist README):

INPUT_MAIL_FILTER(`greylist',
`S=local:/var/milter-greylist/milter-greylist.sock')
define(`confMILTER_MACROS_CONNECT', `j, {if_addr}, {greylist}')
define(`confMILTER_MACROS_HELO', `{verify}, {cert_subject}')
define(`confMILTER_MACROS_ENVFROM', `i, {auth_authen}, {greylist}')
define(`confMILTER_MACROS_ENVRCPT', `{greylist}')

LOCAL_CONFIG
Kstorage macro
LOCAL_RULESETS
SLocal_check_rcpt
R$+		$: $(storage {greylist} $) $&{client_addr}
R$+		$: $>A <$1> <?> <+Connect> <$1>
R<$+> <$*>	$: $(storage {greylist} $@ $1 $) $2

my /etc/mail/access file looks like :
localhost.localdomain           RELAY
localhost                       RELAY
127.0.0.1                       RELAY
Connect:192.168.164.1                   RELAY

The macro {greylist} is defined when the sender IP which is marked as
RELAY in sendmail's access db because as see in the log milter-greylist
whitelists the sender :

... l659bck3022646: addr = [192.168.164.1][192.168.164.1], from = <test at test.com>, rcpt = <me at mydomain.com>
... milter-greylist: whitelisted by {greylist}

Then I starts mimedefang with '-a greylist' and add something like :
    if (defined($SendmailMacros{"greylist"})) {
        md_syslog('info', "Relay $ip is whitelisted, exiting");
        return ('ACCEPT_AND_NO_MORE_FILTERING', "ok");
    }

in filter_relay, filter_recipient, filter_begin, but no luck.

Could someone tell me what's wrong ?

Thanx.



More information about the MIMEDefang mailing list