"spam honeypots" is more reliable than "spam detection"
[PerlMail.git] / My-Audit.pm
index 3ced029..6619e11 100644 (file)
@@ -39,18 +39,6 @@ sub audit
                        || headerhas "From",'<Regexp:^owner->'
                        );
 
-       # spam detection
-       return if did sub {
-               local $store_profile="silent";
-               local $_;
-               store "=spam-abuse"                .";$_","log" if $_=dnsbl '.blackholes.mail-abuse.org.' ,1;   # all hosts
-               # we don't check all hosts as they can be "dialup" category, FIXME: check for it
-               store "=spam-five"                 .";$_","log" if $_=dnsbl '.blackholes.five-ten-sg.com.',0; # just first
-               store "=spam-razor".($_ eq 1 ? "" : ";$_")      if $_=razor2();
-               # I don't send viruses but viruses propagate mails of mine
-               store "=spam-av"                                if headeris "X-Mailer",'ravmd/8.3.2';
-               };
-
        # spam honeypots
        return if did sub {
                local $_;
@@ -69,6 +57,18 @@ sub audit
                store "=spamo-big5" if ($_=mimehead(body_first())->mime_attr("Content-Type.charset")) && /^big5/i;
                };
 
+       # spam detection
+       return if did sub {
+               local $store_profile="silent";
+               local $_;
+               store "=spam-abuse"                .";$_","log" if $_=dnsbl '.blackholes.mail-abuse.org.' ,1;   # all hosts
+               # we don't check all hosts as they can be "dialup" category, FIXME: check for it
+               store "=spam-five"                 .";$_","log" if $_=dnsbl '.blackholes.five-ten-sg.com.',0; # just first
+               store "=spam-razor".($_ eq 1 ? "" : ";$_")      if $_=razor2();
+               # I don't send viruses but viruses propagate mails of mine
+               store "=spam-av"                                if headeris "X-Mailer",'ravmd/8.3.2';
+               };
+
        # special delivery
        store "=err","bell" and return if headerhas \&Received_for,'<short+err@>';