I am attempting to reject mail for ip's with no reverse DNS (not
mismatched forward/reverse.) The below filter_relay works, however it is
not passing the $msg for return(REJECT) to sendmail (or maybe sendmail
isn't picking it up?) The maillog reports: "sm-mta[82794]:
i9U00cCx082794: Milter: connect: host=[216.117.199.248],
addr=216.117.199.248, rejecting commands" for IP's without reverse, and
successfully sends with reverse.
My second question/problem is the 3 commented out lines. The man page for
mimedefang-filter indicates that if an IP has no reverse dns, then
$hostname is a duplicate of $hostip. This then should make a real quick
and easy check for no reverse, however the if statement (when not
commented) never seems to be true.
use Net::DNS;
sub filter_relay () {
my ($hostip, $hostname) = @_;
my $res = Net::DNS::Resolver->new;
my $query = $res->search($hostip);
#if ($hostip eq $hostname) {
# return ('TEMPFAIL',"Please fix your reverse DNS before sending us mail.");
#}
if ($query) {
$query->answer;
}
$response=$res->errorstring;
if ($response eq 'NXDOMAIN') {
return ('REJECT', "Please fix your reverse DNS before sending us mail.", 550,
5.7.1, 1);
}
return ('CONTINUE', "ok");
}
David Hiebert
Keyway Internet Services
909-933-3699
_______________________________________________
Visit http://www.mimedefang.org and http://www.canit.ca
MIMEDefang mailing list
[EMAIL PROTECTED]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang