Am 04.08.2008 um 15:04 schrieb Peter Sørensen:

> Hi,
>
> I would like to test the CRM114 spamassassin plugin.
> I have a question regarding this.
>
> Is it nessecary to patch amavisd-new to make this work -  meaning  
> make the
> X-CRM114-CacheID  header generated by CRM114 available in the mail?
>
> Any hints to this?
>
> Regards
>
> Peter Sorensen/University of Southern Denmark/mail: [EMAIL PROTECTED]

Hej,

i believe yes to get the autolearn thing working, at least thats what  
i do.
I used the patch from mschuette.name/wp/crm114-spamassassin-plugin/
Its originally crafted for amavisd v2.5.2
If you want to try, my actual diff against v2.6.1 looks like this:

diff -u /usr/local/src/amavisd-new-2.6.1/amavisd /usr/sbin/amavisd- 
new-2.6.1_crm114
--- /usr/local/src/amavisd-new-2.6.1/amavisd    2008-06-29  
02:37:58.000000000 +0200
+++ /usr/sbin/amavisd-new-2.6.1_crm114  2008-07-28 20:48:18.000000000  
+0200
@@ -963,6 +963,7 @@
      X-Amavis-PenPals X-Amavis-OS-Fingerprint X-Amavis-PolicyBank
      X-Spam-Status X-Spam-Level X-Spam-Flag X-Spam-Score
      X-Spam-Report X-Spam-Checker-Version X-Spam-Tests
+    X-Spam-CRM114-Status X-Spam-CRM114-CacheID
      X-DSPAM-Signature X-DSPAM-Result
      X-DSPAM-Confidence X-DSPAM-Probability X-DSPAM-User X-DSPAM- 
Factors
    );
@@ -9796,12 +9797,15 @@
          $virus_dejavu = 1;
        }
        if ($spam_presence_checked) {
-        my($spam_level,$spam_status,$spam_report,$spam_summary) =
-          @$cache_entry{'SL','SS','SR','SY'};
+       my($spam_level,$spam_status,$spam_report,$spam_summary, 
$crm114_score,$crm114_status,$crm114_cacheid) =
+         @$cache_entry{'SL','SS','SR','SY','SCS','SCT','SCI'};
          $msginfo->spam_level($spam_level);
          $msginfo->spam_status($spam_status);
          $msginfo->spam_report($spam_report);
          $msginfo->spam_summary($spam_summary);
+       $msginfo->supplementary_info('CRM114SCORE', $crm114_score),
+       $msginfo->supplementary_info('CRM114STATUS', $crm114_status),
+       $msginfo->supplementary_info('CRM114CACHEID', $crm114_cacheid)
        }
        do_log(1,"cached %s from <%s> (%s,%s)", $body_digest, $sender,
                 $virus_presence_checked, $spam_presence_checked);
@@ -10052,9 +10056,13 @@
          prolong_timer($which_section);
          $elapsed{'TimeElapsedSpamCheck'} = Time::HiRes::time -  
$t0_sect;
          snmp_count('OpsSpamCheck');
-        @$cache_entry{'St','SL','SS','SR','SY'} =
+       @$cache_entry{'St','SL','SS','SR','SY','SCS','SCT','SCI'} =
            (int($now), $msginfo->spam_level, $msginfo->spam_status,
-           $msginfo->spam_report, $msginfo->spam_summary);
+           $msginfo->spam_report, $msginfo->spam_summary,
+          $msginfo->supplementary_info('CRM114SCORE'),
+          $msginfo->supplementary_info('CRM114STATUS'),
+          $msginfo->supplementary_info('CRM114CACHEID')
+           );
          $spam_presence_checked = 1;
        }
      }
@@ -11080,7 +11088,8 @@
      if (c('remove_existing_spam_headers')) {
        my(@which_headers) = qw(
            X-Spam-Status X-Spam-Level X-Spam-Flag X-Spam-Score
-          X-Spam-Report X-Spam-Checker-Version X-Spam-Tests);
+          X-Spam-Report X-Spam-Checker-Version X-Spam-Tests
+         X-Spam-CRM114-Status X-Spam-CRM114-CacheID);
        push(@which_headers, qw(
            X-DSPAM-Result X-DSPAM-Confidence X-DSPAM-Probability
            X-DSPAM-Signature X-DSPAM-User X-DSPAM-Factors))  if  
defined $dspam;
@@ -11285,6 +11294,13 @@
               $allowed_hdrs && $allowed_hdrs->{lc('X-Spam-Level')};
          $hdr_edits->add_header('X-Spam-Status', $full_spam_status, 1)
            if $allowed_hdrs && $allowed_hdrs->{lc('X-Spam-Status')};
+       $hdr_edits->add_header('X-Spam-CRM114-Status', sprintf("%s  
( %s )",
+               $msginfo->supplementary_info('CRM114STATUS'),
+               $msginfo->supplementary_info('CRM114SCORE')), 1)
+          if $allowed_hdrs && $allowed_hdrs->{lc('X-Spam-CRM114- 
Status')};
+       $hdr_edits->add_header('X-Spam-CRM114-CacheID',
+               $msginfo->supplementary_info('CRM114CACHEID'), 1)
+         if $allowed_hdrs && $allowed_hdrs->{lc('X-Spam-CRM114- 
CacheID')};
        }
        if ($do_tag2 && $is_local) {
          # SA reports may contain any octet, i.e. 8-bit data from a  
mail
@@ -12975,9 +12991,9 @@

  if ($daemonize) {  # log warnings and uncaught errors
    $SIG{'__DIE__' } =
-    sub { if (!$^S) { my($m) = $@; chomp($m); do_log(-1,"_DIE: %s",  
$m) } };
+    sub { if (!$^S) { my($m) = @_; chomp($m); do_log(-1,"_DIE: %s",  
$m) } };
    $SIG{'__WARN__'} =
-    sub { my($m) = $@; chomp($m); do_log( 2,"_WARN: %s",$m) };
+    sub { my($m) = @_; chomp($m); do_log( 2,"_WARN: %s",$m) };
  }

  # set up Net::Server configuration
@@ -20359,6 +20375,7 @@
          $sa_tests   = $per_msg_status->get_tag('TESTSSCORES',',');
          for my $t (qw(TESTS AUTOLEARN AUTOLEARNSCORE SC SCRULE SCTYPE
                        LANGUAGES RELAYCOUNTRY ASN ASNCIDR DCCB DCCR  
DCCREP
+                     CRM114STATUS CRM114SCORE CRM114CACHEID
                        DKIMDOMAIN DKIMIDENTITY AWLSIGNERMEAN)) {
            $supplementary_info{$t} = $per_msg_status->get_tag($t);
          }

############

To get it in the logs to see if it works (at loglevel 2), i put  
something like:

[? [:supplementary_info|CRM114STATUS] ||, crm114_status=[:uquote| 
[:supplementary_info|CRM114STATUS]]]#
[? [:supplementary_info|CRM114CACHEID] ||, crm114_cacheid=[:uquote| 
[:supplementary_info|CRM114CACHEID]]]#

in passed + blocked sections of my $log_templ

Did some retraing on false-positives and -negatives via "crm  
mailreaver.crm --spam|nospam cache-id" in the first days,
but now it seems to be very acurate.
I run crm114.pm with fixed scores since about 6 month on two lite- 
loaded mailservers and it works great here.

regards jules
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
AMaViS-user mailing list
AMaViS-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amavis-user
AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3
AMaViS-HowTos:http://www.amavis.org/howto/

Reply via email to