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 2022/05/12 11:34:54 UTC

svn commit: r1900834 - /spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm

Author: hege
Date: Thu May 12 11:34:54 2022
New Revision: 1900834

URL: http://svn.apache.org/viewvc?rev=1900834&view=rev
Log:
Limit fixing net rule priorities to -100

Modified:
    spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm

Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm?rev=1900834&r1=1900833&r2=1900834&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm Thu May 12 11:34:54 2022
@@ -1152,7 +1152,9 @@ sub fix_priorities {
   my $conf = $self->{conf};
 
   return unless $conf->{meta_dependencies};    # order requirement
+
   my $pri = $conf->{priority};
+  my $tflags = $conf->{tflags};
 
   # sort into priority order, lowest first -- this way we ensure that if we
   # rearrange the pri of a rule early on, we cannot accidentally increase its
@@ -1167,8 +1169,14 @@ sub fix_priorities {
     foreach my $dep (@$deps) {
       my $deppri = $pri->{$dep};
       if (defined $deppri && $deppri > $basepri) {
-        dbg("rules: $rule (pri $basepri) requires $dep (pri $deppri): fixed");
-        $pri->{$dep} = $basepri;
+        if ($basepri < -100 && ($tflags->{$dep}||'') =~ /\bnet\b/) {
+          dbg("rules: $rule (pri $basepri) requires $dep (pri $deppri): fixed to -100 (net rule)");
+          $pri->{$dep} = -100;
+          $conf->{priorities}->{-100}++;
+        } else {
+          dbg("rules: $rule (pri $basepri) requires $dep (pri $deppri): fixed");
+          $pri->{$dep} = $basepri;
+        }
       }
     }
   }