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