With the attached patch applied, the spamassassin plugin adds the X-Spam-Level header line to the mail, i.e. a header consisting of 'X-Spam-Level: ' followed by a number of asterisks '*' given by the spam level.

With this line present it is easier to write filter rules for the most email programs.

Werner
--- spamassassin.orig   2007-09-21 22:19:40.000000000 +0200
+++ spamassassin        2007-09-21 20:35:26.000000000 +0200
@@ -207,18 +207,25 @@
     {
       $transaction->header->add('X-Old-Spam-Status', $header);
     }
+
+    foreach my $header ( $transaction->header->get('X-Spam-Level') )
+    {
+      $transaction->header->add('X-Old-Spam-Level', $header);
+    }
   }
     
   if ( $leave_old_headers eq 'drop' || $leave_old_headers eq 'rename' )
   {
     $transaction->header->delete('X-Spam-Flag');
     $transaction->header->delete('X-Spam-Status');
+    $transaction->header->delete('X-Spam-Level');
   }
 
   $transaction->header->add('X-Spam-Flag', 'YES', 0) if ($flag eq 'Yes');
   $transaction->header->add('X-Spam-Status',
                            "$flag, hits=$hits required=$required\n" .
                            "\ttests=$tests", 0);
+  $transaction->header->add('X-Spam-Level', '*' x $hits, 0);
   $self->log(LOGNOTICE, "check_spam: $flag, hits=$hits, required=$required, " .
                             "tests=$tests");
 

Reply via email to