Steph,

Thank you for the reply.  I have added your fix into
the plugins/spamassassin file, and that has
stopped the error in the logs.  The next problem
is that  the sub check_spam_reject is never triggering
and rejecting the spam.
I don't know perl, but I have been dinking with it, but
all I have come up with is this hack.  
Please keep in mind that I do NOT know perl.


  while (<SPAMD>) {
    warn "GOT FROM SPAMD1: $_";
     next unless m/^Spam: \w/;
#      next unless m/\S/;
       s/\r?\n$/\n/;
       my @h = split /; /, $_, 2;
#       my @h = split /: /, $_, 2;

    $transaction->header->add(@h);
    last if $h[0] eq "Spam" and $h[1] =~ m/^False/;

  return (DENY, "spam score exceeded threshold")
    if $h[0] eq "Spam: Yes " ;

  }

  return (DECLINED);


This bypasses the ability to compare the thresholds
and such, but it does refuse based on the local.cf
value.
Sam



----- Original Message ----- 
From: "Steph L" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, June 30, 2003 2:09 PM
Subject: Re: Spamassassin fatal error (burp)


 

> This is the same error Matt has, but I can fill in some answers
> regarding my system.
> 
> In brief, the error only occurs on email that exceedes the required
> hits. The "use_terse_report" seems to change the error somewhat.
> I am sorry that I am not more of a programmer, but for some reason
> this looks like it should be something simple.
> I have played with the local.cf file a lot, but nothing else seems to
> effect the problem.
> Is there a way to "dump" the output from SA to see what is coming back
> from spamd?
> 

hi Sam, 

I have done some tests and got the same problems you mention. 

I did added some logging of SA result.

To debug just remove the # in the warn line :
warn "GOT FROM SPAMD1: $_";

In my case the SPAMD result (obtained in /tmp/debug.log)  was : 
GOT FROM SPAMD1: Spam: Yes ; 27.0 / 5.0
GOT FROM SPAMD1:
GOT FROM SPAMD1: 27.0/5.0
Use of uninitialized value at 
/usr/local/lib/perl5/site_perl/5.005/Mail/Header.pm line 210, <SPAMD> 
chunk 4.
Use of uninitialized value at 
/usr/local/lib/perl5/site_perl/5.005/Mail/Header.pm line 214, <SPAMD> 
chunk 4.
Use of uninitialized value at 
/usr/local/lib/perl5/site_perl/5.005/Mail/Header.pm line 214, <SPAMD> 
chunk 4.
GOT FROM SPAMD1: SUBJ_FREE_CAP      (0.7 points)  Subject contains 
"FREE" in CAPS
433 FATAL PLUGIN ERROR:  Bad RFC822 field name 'Subj_free_cap      (0.7 
points)  subject contains "free" in caps


The error Bad RFC822 field name 'Subj_free_cap      (0.7 points)  
subject contains "free" in caps' occurs because we try to add some 
illegal header that contains spaces. 


the offending code is :

next unless m/\S/;
    s/\r?\n$/\n/;
    my @h = split /: /, $_, 2;

I've added the following line before the line my @h = split /: /, $_, 2;

next unless m/^Spam: \w/;

and it seems ok now


Reply via email to