You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by he...@apache.org on 2018/10/05 12:07:35 UTC
svn commit: r1842899 - in /spamassassin/trunk: lib/Mail/SpamAssassin/
lib/Mail/SpamAssassin/Plugin/ rules/ rulesrc/sandbox/davej/
rulesrc/sandbox/jm/
Author: hege
Date: Fri Oct 5 12:07:34 2018
New Revision: 1842899
URL: http://svn.apache.org/viewvc?rev=1842899&view=rev
Log:
Bug 5930 - Shortcircuiting before DNS lookups (more changes)
Modified:
spamassassin/trunk/lib/Mail/SpamAssassin/AsyncLoop.pm
spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Check.pm
spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm
spamassassin/trunk/rules/20_dnsbl_tests.cf
spamassassin/trunk/rules/25_dkim.cf
spamassassin/trunk/rules/25_spf.cf
spamassassin/trunk/rules/25_uribl.cf
spamassassin/trunk/rules/60_whitelist_dkim.cf
spamassassin/trunk/rulesrc/sandbox/davej/20_dkimwl.cf
spamassassin/trunk/rulesrc/sandbox/jm/20_dob.cf
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/AsyncLoop.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/AsyncLoop.pm?rev=1842899&r1=1842898&r2=1842899&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/AsyncLoop.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/AsyncLoop.pm Fri Oct 5 12:07:34 2018
@@ -255,8 +255,27 @@ filled-in with a query ID.
=cut
+sub launch_queue {
+ my($self) = @_;
+ if ($self->{bgsend_queue}) {
+ dbg("async: launching queued lookups");
+ foreach (@{$self->{bgsend_queue}}) {
+ $self->bgsend_and_start_lookup(@$_);
+ }
+ delete $self->{bgsend_queue};
+ }
+}
+
sub bgsend_and_start_lookup {
- my($self, $domain, $type, $class, $ent, $cb, %options) = @_;
+ my $self = shift;
+ my($domain, $type, $class, $ent, $cb, %options) = @_;
+
+ # Waiting for priority -100 to launch?
+ if ($self->{wait_launch}) {
+ push @{$self->{bgsend_queue}}, [@_];
+ dbg("async: dns priority not reached, queueing lookup: $_[0] $_[1]");
+ return $ent;
+ }
# At this point the $domain should already be encoded to UTF-8 and
# IDN converted to ASCII-compatible encoding (ACE). Make sure this is
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Check.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Check.pm?rev=1842899&r1=1842898&r2=1842899&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Check.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Check.pm Fri Oct 5 12:07:34 2018
@@ -50,6 +50,9 @@ sub check_main {
my $pms = $args->{permsgstatus};
+ # Make AsyncLoop wait permission for launching queries
+ $pms->{async}->{wait_launch} = 1;
+
my $suppl_attrib = $pms->{msg}->{suppl_attrib};
if (ref $suppl_attrib && ref $suppl_attrib->{rule_hits}) {
my @caller_rule_hits = @{$suppl_attrib->{rule_hits}};
@@ -88,7 +91,11 @@ sub check_main {
my @uris = $pms->get_uri_list();
+ # Make sure priority -100 exists for launching DNS
+ $pms->{conf}->{priorities}->{-100} ||= 1;
+
foreach my $priority (sort { $a <=> $b } keys %{$pms->{conf}->{priorities}}) {
+ dbg("FOO running priority $priority");
# no need to run if there are no priorities at this level. This can
# happen in Conf.pm when we switch a rule from one priority to another
next unless ($pms->{conf}->{priorities}->{$priority} > 0);
@@ -111,6 +118,8 @@ sub check_main {
# unneeded DNS queries.
if (!$rbls_running && $priority >= -100) {
$rbls_running = 1;
+ $pms->{async}->{wait_launch} = 0; # permission granted
+ $pms->{async}->launch_queue(); # check if something was queued
$self->run_rbl_eval_tests($pms);
}
@@ -137,56 +146,56 @@ sub check_main {
$pms->{resolver}->finish_socket() if $pms->{resolver};
}
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
# allow other, plugin-defined rule types to be called here
$self->{main}->call_plugins ("check_rules_at_priority",
{ permsgstatus => $pms, priority => $priority, checkobj => $self });
# do head tests
$self->do_head_tests($pms, $priority);
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
$self->do_head_eval_tests($pms, $priority);
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
$self->do_body_tests($pms, $priority, $decoded);
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
$self->do_uri_tests($pms, $priority, @uris);
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
$self->do_body_eval_tests($pms, $priority, $decoded);
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
$self->do_rawbody_tests($pms, $priority, $bodytext);
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
$self->do_rawbody_eval_tests($pms, $priority, $bodytext);
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
$self->do_full_tests($pms, $priority, \$fulltext);
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
$self->do_full_eval_tests($pms, $priority, \$fulltext);
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
$self->do_meta_tests($pms, $priority);
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
# we may need to call this more often than once through the loop, but
# it needs to be done at least once, either at the beginning or the end.
$self->{main}->call_plugins ("check_tick", { permsgstatus => $pms });
- $pms->harvest_completed_queries();
+ $pms->harvest_completed_queries() if $rbls_running;
last if $pms->{deadline_exceeded};
}
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm?rev=1842899&r1=1842898&r2=1842899&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm Fri Oct 5 12:07:34 2018
@@ -325,6 +325,11 @@ sub new {
return $self;
}
+# this is just a placeholder; in fact the results are dealt with later
+sub check_uridnsbl {
+ return 0;
+}
+
# ---------------------------------------------------------------------------
# once the metadata is parsed, we can access the URI list. So start off
@@ -333,12 +338,9 @@ sub new {
#
# only parse and run after first check_uridnsbl call
#
-sub check_uridnsbl {
- my ($self, $pms, @args) = @_;
-
- # only parse once
- return 0 if $pms->{uridnsbl_done};
- $pms->{uridnsbl_done} = 1;
+sub parsed_metadata {
+ my ($self, $opts) = @_;
+ my $pms = $opts->{permsgstatus};
my $conf = $pms->{conf};
@@ -495,7 +497,7 @@ sub check_uridnsbl {
# and query
$self->query_hosts_or_domains($pms, \%hostlist);
- return 0;
+ return 1;
}
# Accepts argument in one of the following forms: m, n1-n2, or n/m,
Modified: spamassassin/trunk/rules/20_dnsbl_tests.cf
URL: http://svn.apache.org/viewvc/spamassassin/trunk/rules/20_dnsbl_tests.cf?rev=1842899&r1=1842898&r2=1842899&view=diff
==============================================================================
--- spamassassin/trunk/rules/20_dnsbl_tests.cf (original)
+++ spamassassin/trunk/rules/20_dnsbl_tests.cf Fri Oct 5 12:07:34 2018
@@ -216,18 +216,15 @@ ifplugin Mail::SpamAssassin::Plugin::Ask
askdns DKIMDOMAIN_IN_DWL _DKIMDOMAIN_._vouch.dwl.spamhaus.org TXT /^([a-z]+ )*(transaction|list|all)( [a-z]+)*$/
tflags DKIMDOMAIN_IN_DWL net nice
describe DKIMDOMAIN_IN_DWL Signing domain listed in Spamhaus DWL
-priority DKIMDOMAIN_IN_DWL -100
reuse DKIMDOMAIN_IN_DWL
askdns __DKIMDOMAIN_IN_DWL_ANY _DKIMDOMAIN_._vouch.dwl.spamhaus.org TXT
tflags __DKIMDOMAIN_IN_DWL_ANY net nice
describe __DKIMDOMAIN_IN_DWL_ANY Any TXT response received from a Spamhaus DWL
-priority __DKIMDOMAIN_IN_DWL_ANY -100
reuse __DKIMDOMAIN_IN_DWL_ANY
meta DKIMDOMAIN_IN_DWL_UNKNOWN __DKIMDOMAIN_IN_DWL_ANY && !DKIMDOMAIN_IN_DWL
tflags DKIMDOMAIN_IN_DWL_UNKNOWN net nice
-priority DKIMDOMAIN_IN_DWL_UNKNOWN -100
describe DKIMDOMAIN_IN_DWL_UNKNOWN Unrecognized response from Spamhaus DWL
endif
Modified: spamassassin/trunk/rules/25_dkim.cf
URL: http://svn.apache.org/viewvc/spamassassin/trunk/rules/25_dkim.cf?rev=1842899&r1=1842898&r2=1842899&view=diff
==============================================================================
--- spamassassin/trunk/rules/25_dkim.cf (original)
+++ spamassassin/trunk/rules/25_dkim.cf Fri Oct 5 12:07:34 2018
@@ -35,13 +35,11 @@ ifplugin Mail::SpamAssassin::Plugin::DKI
full DKIM_SIGNED eval:check_dkim_signed()
describe DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid
tflags DKIM_SIGNED net
-priority DKIM_SIGNED -100
reuse DKIM_SIGNED
full DKIM_VALID eval:check_dkim_valid()
describe DKIM_VALID Message has at least one valid DKIM or DK signature
tflags DKIM_VALID net nice
-priority DKIM_VALID -100
reuse DKIM_VALID
meta DKIM_INVALID DKIM_SIGNED && !DKIM_VALID
@@ -50,65 +48,54 @@ describe DKIM_INVALID DKIM or DK signat
full DKIM_VALID_AU eval:check_dkim_valid_author_sig()
describe DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain
tflags DKIM_VALID_AU net nice
-priority DKIM_VALID_AU -100
reuse DKIM_VALID_AU
if (version >= 3.004002)
full DKIM_VALID_EF eval:check_dkim_valid_envelopefrom()
describe DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain
tflags DKIM_VALID_EF net nice
-priority DKIM_VALID_EF -100
reuse DKIM_VALID_EF
endif
full __DKIM_DEPENDABLE eval:check_dkim_dependable()
describe __DKIM_DEPENDABLE A validation failure not attributable to truncation
-priority __DKIM_DEPENDABLE -100
reuse __DKIM_DEPENDABLE
header DKIM_ADSP_NXDOMAIN eval:check_dkim_adsp('N')
describe DKIM_ADSP_NXDOMAIN No valid author signature and domain not in DNS
tflags DKIM_ADSP_NXDOMAIN net
-priority DKIM_ADSP_NXDOMAIN -100
reuse DKIM_ADSP_NXDOMAIN
header DKIM_ADSP_DISCARD eval:check_dkim_adsp('D')
describe DKIM_ADSP_DISCARD No valid author signature, domain signs all mail and suggests discarding the rest
tflags DKIM_ADSP_DISCARD net
-priority DKIM_ADSP_DISCARD -100
reuse DKIM_ADSP_DISCARD
header DKIM_ADSP_ALL eval:check_dkim_adsp('A')
describe DKIM_ADSP_ALL No valid author signature, domain signs all mail
tflags DKIM_ADSP_ALL net
-priority DKIM_ADSP_ALL -100
reuse DKIM_ADSP_ALL
header DKIM_ADSP_CUSTOM_LOW eval:check_dkim_adsp('1')
describe DKIM_ADSP_CUSTOM_LOW No valid author signature, adsp_override is CUSTOM_LOW
tflags DKIM_ADSP_CUSTOM_LOW net userconf
-priority DKIM_ADSP_CUSTOM_LOW -100
reuse DKIM_ADSP_CUSTOM_LOW
header DKIM_ADSP_CUSTOM_MED eval:check_dkim_adsp('2')
describe DKIM_ADSP_CUSTOM_MED No valid author signature, adsp_override is CUSTOM_MED
tflags DKIM_ADSP_CUSTOM_MED net userconf
-priority DKIM_ADSP_CUSTOM_MED -100
reuse DKIM_ADSP_CUSTOM_MED
header DKIM_ADSP_CUSTOM_HIGH eval:check_dkim_adsp('3')
describe DKIM_ADSP_CUSTOM_HIGH No valid author signature, adsp_override is CUSTOM_HIGH
tflags DKIM_ADSP_CUSTOM_HIGH net userconf
-priority DKIM_ADSP_CUSTOM_HIGH -100
reuse DKIM_ADSP_CUSTOM_HIGH
full __RESIGNER1 eval:check_dkim_valid('linkedin.com')
tflags __RESIGNER1 net
-priority __RESIGNER1 -100
reuse __RESIGNER1
full __RESIGNER2 eval:check_dkim_valid('googlegroups.com','yahoogroups.com','yahoogroups.de')
tflags __RESIGNER2 net
-priority __RESIGNER2 -100
reuse __RESIGNER2
meta __VIA_RESIGNER __RESIGNER1 || __RESIGNER2
describe __VIA_RESIGNER Mail through a popular signing remailer
@@ -128,22 +115,18 @@ describe NML_ADSP_CUSTOM_HIGH ADSP cus
full DKIM_VERIFIED eval:check_dkim_valid()
tflags DKIM_VERIFIED net nice
-priority DKIM_VERIFIED -100
reuse DKIM_VERIFIED
header DKIM_POLICY_TESTING eval:check_dkim_testing()
tflags DKIM_POLICY_TESTING net nice
-priority DKIM_POLICY_TESTING -100
reuse DKIM_POLICY_TESTING
header DKIM_POLICY_SIGNSOME eval:check_dkim_signsome()
tflags DKIM_POLICY_SIGNSOME net nice
-priority DKIM_POLICY_SIGNSOME -100
reuse DKIM_POLICY_SIGNSOME
header DKIM_POLICY_SIGNALL eval:check_dkim_signall()
tflags DKIM_POLICY_SIGNALL net nice
-priority DKIM_POLICY_SIGNALL -100
reuse DKIM_POLICY_SIGNALL
endif # Mail::SpamAssassin::Plugin::DKIM
Modified: spamassassin/trunk/rules/25_spf.cf
URL: http://svn.apache.org/viewvc/spamassassin/trunk/rules/25_spf.cf?rev=1842899&r1=1842898&r2=1842899&view=diff
==============================================================================
--- spamassassin/trunk/rules/25_spf.cf (original)
+++ spamassassin/trunk/rules/25_spf.cf Fri Oct 5 12:07:34 2018
@@ -40,25 +40,21 @@ ifplugin Mail::SpamAssassin::Plugin::SPF
header SPF_PASS eval:check_for_spf_pass()
describe SPF_PASS SPF: sender matches SPF record
tflags SPF_PASS nice userconf net
-priority SPF_PASS -100
reuse SPF_PASS
header SPF_NEUTRAL eval:check_for_spf_neutral()
describe SPF_NEUTRAL SPF: sender does not match SPF record (neutral)
tflags SPF_NEUTRAL net
-priority SPF_NEUTRAL -100
reuse SPF_NEUTRAL
header SPF_FAIL eval:check_for_spf_fail()
describe SPF_FAIL SPF: sender does not match SPF record (fail)
tflags SPF_FAIL net
-priority SPF_FAIL -100
reuse SPF_FAIL
header SPF_SOFTFAIL eval:check_for_spf_softfail()
describe SPF_SOFTFAIL SPF: sender does not match SPF record (softfail)
tflags SPF_SOFTFAIL net
-priority SPF_SOFTFAIL -100
reuse SPF_SOFTFAIL
@@ -69,38 +65,32 @@ reuse SPF_SOFTFAIL
header SPF_HELO_PASS eval:check_for_spf_helo_pass()
describe SPF_HELO_PASS SPF: HELO matches SPF record
tflags SPF_HELO_PASS nice userconf net
-priority SPF_HELO_PASS -100
reuse SPF_HELO_PASS
header SPF_HELO_NEUTRAL eval:check_for_spf_helo_neutral()
describe SPF_HELO_NEUTRAL SPF: HELO does not match SPF record (neutral)
tflags SPF_HELO_NEUTRAL net
-priority SPF_HELO_NEUTRAL -100
reuse SPF_HELO_NEUTRAL
header SPF_HELO_FAIL eval:check_for_spf_helo_fail()
describe SPF_HELO_FAIL SPF: HELO does not match SPF record (fail)
tflags SPF_HELO_FAIL net
-priority SPF_HELO_FAIL -100
reuse SPF_HELO_FAIL
header SPF_HELO_SOFTFAIL eval:check_for_spf_helo_softfail()
describe SPF_HELO_SOFTFAIL SPF: HELO does not match SPF record (softfail)
tflags SPF_HELO_SOFTFAIL net
-priority SPF_HELO_SOFTFAIL -100
reuse SPF_HELO_SOFTFAIL
# Implementing the Sender Check for No SPF REcord defaulting to disabled so Admins can override
header SPF_NONE eval:check_for_spf_none()
describe SPF_NONE SPF: sender does not publish an SPF Record
tflags SPF_NONE net
-priority SPF_NONE -100
reuse SPF_NONE
header SPF_HELO_NONE eval:check_for_spf_helo_none()
describe SPF_HELO_NONE SPF: HELO does not publish an SPF Record
tflags SPF_HELO_NONE net
-priority SPF_HELO_NONE -100
reuse SPF_HELO_NONE
@@ -110,25 +100,21 @@ if can(Mail::SpamAssassin::Plugin::SPF::
header T_SPF_PERMERROR eval:check_for_spf_permerror()
describe T_SPF_PERMERROR SPF: test of record failed (permerror)
tflags T_SPF_PERMERROR net
-priority T_SPF_PERMERROR -100
reuse T_SPF_PERMERROR
header T_SPF_TEMPERROR eval:check_for_spf_temperror()
describe T_SPF_TEMPERROR SPF: test of record failed (temperror)
tflags T_SPF_TEMPERROR net
-priority T_SPF_TEMPERROR -100
reuse T_SPF_TEMPERROR
header T_SPF_HELO_PERMERROR eval:check_for_spf_helo_permerror()
describe T_SPF_HELO_PERMERROR SPF: test of HELO record failed (permerror)
tflags T_SPF_HELO_PERMERROR net
-priority T_SPF_HELO_PERMERROR -100
reuse T_SPF_HELO_PERMERROR
header T_SPF_HELO_TEMPERROR eval:check_for_spf_helo_temperror()
describe T_SPF_HELO_TEMPERROR SPF: test of HELO record failed (temperror)
tflags T_SPF_HELO_TEMPERROR net
-priority T_SPF_HELO_TEMPERROR -100
reuse T_SPF_HELO_TEMPERROR
endif
Modified: spamassassin/trunk/rules/25_uribl.cf
URL: http://svn.apache.org/viewvc/spamassassin/trunk/rules/25_uribl.cf?rev=1842899&r1=1842898&r2=1842899&view=diff
==============================================================================
--- spamassassin/trunk/rules/25_uribl.cf (original)
+++ spamassassin/trunk/rules/25_uribl.cf Fri Oct 5 12:07:34 2018
@@ -37,7 +37,6 @@ uridnssub URIBL_SBL zen.spa
body URIBL_SBL eval:check_uridnsbl('URIBL_SBL')
describe URIBL_SBL Contains an URL's NS IP listed in the Spamhaus SBL blocklist
tflags URIBL_SBL net
-priority URIBL_SBL -100
reuse URIBL_SBL
if (version >= 3.004000)
@@ -47,7 +46,6 @@ if (version >= 3.004000)
body URIBL_SBL_A eval:check_uridnsbl('URIBL_SBL_A')
describe URIBL_SBL_A Contains URL's A record listed in the Spamhaus SBL blocklist
tflags URIBL_SBL_A net a
- priority URIBL_SBL_A -100
reuse URIBL_SBL_A
endif
endif
@@ -61,63 +59,54 @@ urirhssub URIBL_DBL_SPAM dbl.sp
body URIBL_DBL_SPAM eval:check_uridnsbl('URIBL_DBL_SPAM')
describe URIBL_DBL_SPAM Contains a spam URL listed in the Spamhaus DBL blocklist
tflags URIBL_DBL_SPAM net domains_only
-priority URIBL_DBL_SPAM -100
reuse URIBL_DBL_SPAM
urirhssub URIBL_DBL_PHISH dbl.spamhaus.org. A 127.0.1.4
body URIBL_DBL_PHISH eval:check_uridnsbl('URIBL_DBL_PHISH')
describe URIBL_DBL_PHISH Contains a Phishing URL listed in the Spamhaus DBL blocklist
tflags URIBL_DBL_PHISH net domains_only
-priority URIBL_DBL_PHISH -100
reuse URIBL_DBL_PHISH
urirhssub URIBL_DBL_MALWARE dbl.spamhaus.org. A 127.0.1.5
body URIBL_DBL_MALWARE eval:check_uridnsbl('URIBL_DBL_MALWARE')
describe URIBL_DBL_MALWARE Contains a malware URL listed in the Spamhaus DBL blocklist
tflags URIBL_DBL_MALWARE net domains_only
-priority URIBL_DBL_MALWARE -100
reuse URIBL_DBL_MALWARE
urirhssub URIBL_DBL_BOTNETCC dbl.spamhaus.org. A 127.0.1.6
body URIBL_DBL_BOTNETCC eval:check_uridnsbl('URIBL_DBL_BOTNETCC')
describe URIBL_DBL_BOTNETCC Contains a botned C&C URL listed in the Spamhaus DBL blocklist
tflags URIBL_DBL_BOTNETCC net domains_only
-priority URIBL_DBL_BOTNETCC -100
reuse URIBL_DBL_BOTNETCC
urirhssub URIBL_DBL_ABUSE_SPAM dbl.spamhaus.org. A 127.0.1.102
body URIBL_DBL_ABUSE_SPAM eval:check_uridnsbl('URIBL_DBL_ABUSE_SPAM')
describe URIBL_DBL_ABUSE_SPAM Contains an abused spamvertized URL listed in the Spamhaus DBL blocklist
tflags URIBL_DBL_ABUSE_SPAM net domains_only
-priority URIBL_DBL_ABUSE_SPAM -100
reuse URIBL_DBL_ABUSE_SPAM
urirhssub URIBL_DBL_ABUSE_REDIR dbl.spamhaus.org. A 127.0.1.103
body URIBL_DBL_ABUSE_REDIR eval:check_uridnsbl('URIBL_DBL_ABUSE_REDIR')
describe URIBL_DBL_ABUSE_REDIR Contains an abused redirector URL listed in the Spamhaus DBL blocklist
tflags URIBL_DBL_ABUSE_REDIR net domains_only
-priority URIBL_DBL_ABUSE_REDIR -100
reuse URIBL_DBL_ABUSE_REDIR
urirhssub URIBL_DBL_ABUSE_PHISH dbl.spamhaus.org. A 127.0.1.104
body URIBL_DBL_ABUSE_PHISH eval:check_uridnsbl('URIBL_DBL_ABUSE_PHISH')
describe URIBL_DBL_ABUSE_PHISH Contains an abused phishing URL listed in the Spamhaus DBL blocklist
tflags URIBL_DBL_ABUSE_PHISH net domains_only
-priority URIBL_DBL_ABUSE_PHISH -100
reuse URIBL_DBL_ABUSE_PHISH
urirhssub URIBL_DBL_ABUSE_MALW dbl.spamhaus.org. A 127.0.1.105
body URIBL_DBL_ABUSE_MALW eval:check_uridnsbl('URIBL_DBL_ABUSE_MALW')
describe URIBL_DBL_ABUSE_MALW Contains an abused malware URL listed in the Spamhaus DBL blocklist
tflags URIBL_DBL_ABUSE_MALW net domains_only
-priority URIBL_DBL_ABUSE_MALW -100
reuse URIBL_DBL_ABUSE_MALW
urirhssub URIBL_DBL_ABUSE_BOTCC dbl.spamhaus.org. A 127.0.1.106
body URIBL_DBL_ABUSE_BOTCC eval:check_uridnsbl('URIBL_DBL_ABUSE_BOTCC')
describe URIBL_DBL_ABUSE_BOTCC Contains an abused botnet C&C URL listed in the Spamhaus DBL blocklist
tflags URIBL_DBL_ABUSE_BOTCC net domains_only
-priority URIBL_DBL_ABUSE_BOTCC -100
reuse URIBL_DBL_ABUSE_BOTCC
@@ -127,7 +116,6 @@ urirhssub URIBL_DBL_ERROR dbl.spa
body URIBL_DBL_ERROR eval:check_uridnsbl('URIBL_DBL_ERROR')
describe URIBL_DBL_ERROR Error: queried the Spamhaus DBL blocklist for an IP
tflags URIBL_DBL_ERROR net domains_only
-priority URIBL_DBL_ERROR -100
reuse URIBL_DBL_ERROR
endif
@@ -140,35 +128,30 @@ endif
#body URIBL_SC_SURBL eval:check_uridnsbl('URIBL_SC_SURBL')
#describe URIBL_SC_SURBL Contains an URL listed in the SC SURBL blocklist
#tflags URIBL_SC_SURBL net
-#priority URIBL_SC_SURBL -100
#reuse URIBL_SC_SURBL
urirhssub URIBL_WS_SURBL multi.surbl.org. A 4
body URIBL_WS_SURBL eval:check_uridnsbl('URIBL_WS_SURBL')
describe URIBL_WS_SURBL Contains an URL listed in the WS SURBL blocklist
tflags URIBL_WS_SURBL net
-priority URIBL_WS_SURBL -100
reuse URIBL_WS_SURBL
urirhssub URIBL_PH_SURBL multi.surbl.org. A 8
body URIBL_PH_SURBL eval:check_uridnsbl('URIBL_PH_SURBL')
describe URIBL_PH_SURBL Contains an URL listed in the PH SURBL blocklist
tflags URIBL_PH_SURBL net
-priority URIBL_PH_SURBL -100
reuse URIBL_PH_SURBL
urirhssub URIBL_MW_SURBL multi.surbl.org. A 16
body URIBL_MW_SURBL eval:check_uridnsbl('URIBL_MW_SURBL')
describe URIBL_MW_SURBL Contains a URL listed in the MW SURBL blocklist
tflags URIBL_MW_SURBL net
-priority URIBL_MW_SURBL -100
reuse URIBL_MW_SURBL
urirhssub URIBL_CR_SURBL multi.surbl.org. A 128
body URIBL_CR_SURBL eval:check_uridnsbl('URIBL_CR_SURBL')
describe URIBL_CR_SURBL Contains an URL listed in the CR SURBL blocklist
tflags URIBL_CR_SURBL net
-priority URIBL_CR_SURBL -100
reuse URIBL_CR_SURBL
#MERGED INTO BIT 64 per bug 7279
@@ -183,7 +166,6 @@ urirhssub URIBL_ABUSE_SURBL multi
body URIBL_ABUSE_SURBL eval:check_uridnsbl('URIBL_ABUSE_SURBL')
describe URIBL_ABUSE_SURBL Contains an URL listed in the ABUSE SURBL blocklist
tflags URIBL_ABUSE_SURBL net
-priority URIBL_ABUSE_SURBL -100
reuse URIBL_ABUSE_SURBL
#SURBL BLOCK RULES - Bit 1 means your DNS has been blocked and this rule should be triggered to notify you.
@@ -191,7 +173,6 @@ urirhssub SURBL_BLOCKED multi.su
body SURBL_BLOCKED eval:check_uridnsbl('SURBL_BLOCKED')
describe SURBL_BLOCKED ADMINISTRATOR NOTICE: The query to SURBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists\#dnsbl-block for more information.
tflags SURBL_BLOCKED net noautolearn
-priority SURBL_BLOCKED -100
reuse SURBL_BLOCKED
###########################################################################
@@ -201,21 +182,18 @@ urirhssub URIBL_BLACK multi.ur
body URIBL_BLACK eval:check_uridnsbl('URIBL_BLACK')
describe URIBL_BLACK Contains an URL listed in the URIBL blacklist
tflags URIBL_BLACK net
-priority URIBL_BLACK -100
reuse URIBL_BLACK
urirhssub URIBL_GREY multi.uribl.com. A 4
body URIBL_GREY eval:check_uridnsbl('URIBL_GREY')
describe URIBL_GREY Contains an URL listed in the URIBL greylist
tflags URIBL_GREY net
-priority URIBL_GREY -100
reuse URIBL_GREY
urirhssub URIBL_RED multi.uribl.com. A 8
body URIBL_RED eval:check_uridnsbl('URIBL_RED')
describe URIBL_RED Contains an URL listed in the URIBL redlist
tflags URIBL_RED net
-priority URIBL_RED -100
reuse URIBL_RED
#URIBL BLOCK RULES - Bit 1 means your DNS has been blocked and this rule should be triggered to notify you.
@@ -223,7 +201,6 @@ urirhssub URIBL_BLOCKED multi.ur
body URIBL_BLOCKED eval:check_uridnsbl('URIBL_BLOCKED')
describe URIBL_BLOCKED ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists\#dnsbl-block for more information.
tflags URIBL_BLOCKED net noautolearn
-priority URIBL_BLOCKED -100
reuse URIBL_BLOCKED
Modified: spamassassin/trunk/rules/60_whitelist_dkim.cf
URL: http://svn.apache.org/viewvc/spamassassin/trunk/rules/60_whitelist_dkim.cf?rev=1842899&r1=1842898&r2=1842899&view=diff
==============================================================================
--- spamassassin/trunk/rules/60_whitelist_dkim.cf (original)
+++ spamassassin/trunk/rules/60_whitelist_dkim.cf Fri Oct 5 12:07:34 2018
@@ -29,13 +29,11 @@ ifplugin Mail::SpamAssassin::Plugin::DKI
header USER_IN_DKIM_WHITELIST eval:check_for_dkim_whitelist_from()
describe USER_IN_DKIM_WHITELIST From: address is in the user's DKIM whitelist
tflags USER_IN_DKIM_WHITELIST nice noautolearn net userconf
-priority USER_IN_DKIM_WHITELIST -100
reuse USER_IN_DKIM_WHITELIST
header USER_IN_DEF_DKIM_WL eval:check_for_def_dkim_whitelist_from()
describe USER_IN_DEF_DKIM_WL From: address is in the default DKIM white-list
tflags USER_IN_DEF_DKIM_WL nice noautolearn net
-priority USER_IN_DEF_DKIM_WL -100
reuse USER_IN_DEF_DKIM_WL
###########################################################################
Modified: spamassassin/trunk/rulesrc/sandbox/davej/20_dkimwl.cf
URL: http://svn.apache.org/viewvc/spamassassin/trunk/rulesrc/sandbox/davej/20_dkimwl.cf?rev=1842899&r1=1842898&r2=1842899&view=diff
==============================================================================
--- spamassassin/trunk/rulesrc/sandbox/davej/20_dkimwl.cf (original)
+++ spamassassin/trunk/rulesrc/sandbox/davej/20_dkimwl.cf Fri Oct 5 12:07:34 2018
@@ -5,7 +5,6 @@ meta DKIMWL_WL_HIGH __DKIMWL_WL_HI && !
tflags DKIMWL_WL_HIGH nice net
describe DKIMWL_WL_HIGH DKIMwl.org - Whitelisted High sender
score DKIMWL_WL_HIGH -7.5
-priority DKIMWL_WL_HIGH -100
reuse DKIMWL_WL_HIGH
askdns __DKIMWL_WL_MED _DKIMDOMAIN_.lookup.dkimwl.org A /^127\.\d+\.\d+\.3$/
@@ -13,14 +12,12 @@ meta DKIMWL_WL_MED __DKIMWL_WL_MED && !
tflags DKIMWL_WL_MED nice net
describe DKIMWL_WL_MED DKIMwl.org - Whitelisted Medium sender
score DKIMWL_WL_MED -3.5
-priority DKIMWL_WL_MED -100
reuse DKIMWL_WL_MED
askdns DKIMWL_BL _DKIMDOMAIN_.lookup.dkimwl.org A /^127\.\d+\.\d+\.0$/
tflags DKIMWL_BL nice net
describe DKIMWL_BL DKIMwl.org - Blacklisted sender
score DKIMWL_BL 7.5
-priority DKIMWL_BL -100
reuse DKIMWL_BL
endif
Modified: spamassassin/trunk/rulesrc/sandbox/jm/20_dob.cf
URL: http://svn.apache.org/viewvc/spamassassin/trunk/rulesrc/sandbox/jm/20_dob.cf?rev=1842899&r1=1842898&r2=1842899&view=diff
==============================================================================
--- spamassassin/trunk/rulesrc/sandbox/jm/20_dob.cf (original)
+++ spamassassin/trunk/rulesrc/sandbox/jm/20_dob.cf Fri Oct 5 12:07:34 2018
@@ -5,7 +5,6 @@ urirhssub URIBL_RHS_DOB dob.sibl
body URIBL_RHS_DOB eval:check_uridnsbl('URIBL_RHS_DOB')
describe URIBL_RHS_DOB Contains an URI of a new domain (Day Old Bread)
tflags URIBL_RHS_DOB net
-priority URIBL_RHS_DOB -100
reuse URIBL_RHS_DOB
endif