[SA-exim] "uninitialized value" errors with SA 3.0.1
Brian Kendig
brian at enchanter.net
Fri Dec 3 20:13:35 PST 2004
I've been the SA-Exim from CVS for a while (including the SA 3.0 patch)
against SpamAssassin 2.64, and it worked fine. But I just upgraded to
SpamAssassin 3.0.1, and now I'm having problems. Specifically,
whenever spamd checks an incoming message, I see something like this in
the mail log:
spamd[6616]: server started on port 783/tcp (running version 3.0.1)
spamd[6616]: connection from localhost [127.0.0.1] at port 50032
spamd[6623]: processing message
<3B9E8392-4590-11D9-852A-000A9595347C at mac.com> for exim:-2.
spamd[6623]: Use of uninitialized value in concatenation (.) or string
at ///Library/Perl/5.8.1/Mail/SpamAssassin/NoMailAudit.pm line 184.
spamd[6623]: Use of uninitialized value in pattern match (m//) at
///Library/Perl/5.8.1/Mail/SpamAssassin/PerMsgStatus.pm line 875.
spamd[6623]: clean message (0.0/5.0) for exim:-2 in 4.5 seconds, 1054
bytes.
Meanwhile, exim says there was a problem, and accepts the message:
I86AWZ-00053X-0B SA: Action: SA didn't successfully run against
message, accepting (time: 5/5 secs | Message-Id:
3B9E8392-4590-11D9-852A-000A9595347C at mac.com). From <brian at mac.com>
(host=smtpout.mac.com [17.250.248.87]) for brian at enchanter.net
I'm running on the latest version of Mac OS X, and I believe I have all
the latest versions of the relevant Perl modules installed from CPAN.
When I look at those files, line 184 of NoMailAudit.pm is:
my(@ret) = $self->{headers_pristine} =~ /^(?:$hdr:[
]+(.*\n(?:\s+\S.*\n)*))/mig;
and line 875 of PerMsgStatus.pm is:
my(@pristine_headers) = grep(!/^X-Spam-(?!Prev-)/i,
$self->{msg}->get_pristine_header() =~ /^([^:]+:[
\t]*(?:.*\n(?:\s+\S.*\n)*))/mig);
So is looks like whatever is causing this problem has something to do
with pristine headers? Any ideas on what might be causing this, or how
to fix it?
- B
More information about the SA-Exim
mailing list