You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@spamassassin.apache.org by tillman <ti...@nuschkys.net> on 2007/12/08 10:11:44 UTC

Certain Spam prevents Spamassassin from scanning it

Hi there,

I'm getting a certain type of spam which seems to stop the scan of
spamassassin by using some utf8 characters (I think). I get spam of this
type ~three times a day on most of the accounts on the server. This is kind
of buggin me as it's going on for months now...

I'm using gentoo with spamassassin-3.2.1-r1, running under amavisd-new-2.4.1

This is where it fails:
------8<------
[4737] dbg: rules: running body tests; score so far=4.492
Use of uninitialized value in pattern match (m//) at
/usr/lib/perl5/5.8.8/utf8_heavy.pl line 211.
Use of uninitialized value in scalar assignment at
/usr/lib/perl5/5.8.8/utf8_heavy.pl line 227.
Use of uninitialized value in pattern match (m//) at
/usr/lib/perl5/5.8.8/utf8_heavy.pl line 228.
Use of uninitialized value in scalar assignment at
/usr/lib/perl5/5.8.8/utf8_heavy.pl line 288.
Use of uninitialized value in pattern match (m//) at
/usr/lib/perl5/5.8.8/utf8_heavy.pl line 291.
Use of uninitialized value in scalar assignment at
/usr/lib/perl5/5.8.8/utf8_heavy.pl line 346.
Use of uninitialized value in pattern match (m//) at
/usr/lib/perl5/5.8.8/utf8_heavy.pl line 347.
plugin: eval failed: panic: swash_fetch at /etc/mail/spamassassin/KAM.cf,
rule __KAM_STOCKTIP50, line 1.
[4737] dbg: check: is spam? score=4.492 required=5
[4737] dbg: check: tests=BAYES_99,DATE_IN_PAST_12_24
[4737] dbg: check:
subtests=__ANY_OUTLOOK_MUA,__CT,__CTYPE_HAS_BOUNDARY,__CTYPE_MULTIPART_ALT,__DOS_RCVD_FRI,__DOS_RELAYED_EXT,__ENV_AND_HDR_FROM_MATCH,__FH_HAS_XMSMAIL,__FH_HAS_XPRIORITY,__HAS_MIMEOLE,__HAS_MSGID,__HAS_MSMAIL_PRI,__HAS_RCVD,__HAS_SUBJECT,__HAS_X_MAILER,__HDR_ORDER_FTSDMCXXXX,__HELO_NO_DOMAIN,__LAST_UNTRUSTED_RELAY_NO_AUTH,__MANY_RECIPS,__MIMEOLE_MS,__MIME_VERSION,__MISSING_REF,__MOLE_2962,__MO_OL_5E7ED,__MO_OL_C7C33,__MSGID_DOLLARS_MAYBE,__MSGID_DOLLARS_OK,__MSGID_OK_HEX,__MSGID_OK_HOST,__MSGID_RANDY,__OE_MUA,__RDNS_DYNAMIC_DHCP,__RDNS_DYNAMIC_IPADDR,__RDNS_INDICATOR_RES,__SANE_MSGID,__SARE_HEAD_MIME_VALID,__SARE_SPEC_SUBJ_LEO,__SARE_WHITELIST_FLAG,__TOCC_EXISTS,__XM_MSOE6,__XM_MS_IN_GENERAL,__XM_OUTLOOK_EXPRESS
Net::SMTP::recipient: unknown option(s) ORCPT - ignored at (eval 65) line
251
Net::SMTP::recipient: unknown option(s) ORCPT - ignored at (eval 65) line
251
Net::SMTP::recipient: unknown option(s) ORCPT - ignored at (eval 65) line
251
------8<------

Apparently, during checking the rules spam assassin exits due to a problem
in utf8_heavy.pl. It's not the rule itself, when I comment it out there's
another rule making problems and after that one another one again... BTW, I
think I'm running SpamAssassin in a non-utf8 environment (how can I verify
this?). I'm starting Amavis with the environment variables LANG and LC_ALL
like this:
  start-stop-daemon --start --quiet --env LANG=C --env LC_ALL=C --exec
/usr/sbin/amavisd
Don't know if this is enough though...

Oh, and does anyone know where the last line comes from? Appeared after the
last perl upgrade...

Any help appreciated
Thanks
Tillman
-- 
View this message in context: http://www.nabble.com/Certain-Spam-prevents-Spamassassin-from-scanning-it-tf4966329.html#a14226649
Sent from the SpamAssassin - Users mailing list archive at Nabble.com.


Re: Certain Spam prevents Spamassassin from scanning it

Posted by tillman <ti...@nuschkys.net>.
> Which version of Perl? Is amavisd running chrooted?
Ouch, sorry, forgot half of the information. :\
Perl is 5.8.8, amavisd running chrooted as user amavis.

> Does the same happen when spamassassin is invoked from
> a command line, e.g. su vscan -c 'spamassassin -t -D <0.msg'
I tried, and it works fine (even when running in an utf8 shell). So it just
doesn't work under amavis. How can I find out why?

Thanks for your help!
Tillman
-- 
View this message in context: http://www.nabble.com/Certain-Spam-prevents-Spamassassin-from-scanning-it-tp14226649p14236932.html
Sent from the SpamAssassin - Users mailing list archive at Nabble.com.


Re: Certain Spam prevents Spamassassin from scanning it

Posted by Mark Martinec <Ma...@ijs.si>.
Tillman,

> Use of uninitialized value in pattern match (m//) at
> /usr/lib/perl5/5.8.8/utf8_heavy.pl line 211.

> /usr/lib/perl5/5.8.8/utf8_heavy.pl line 347.
> plugin: eval failed: panic: swash_fetch at /etc/mail/spamassassin/KAM.cf,
> rule __KAM_STOCKTIP50, line 1.

> Appeared after the last perl upgrade...

Which version of Perl? Is amavisd running chrooted?
Does the same happen when spamassassin is invoked from
a command line, e.g. su vscan -c 'spamassassin -t -D <0.msg'

  Mark

Re: Certain Spam prevents Spamassassin from scanning it

Posted by tillman <ti...@nuschkys.net>.

> You could delete it, but I guess you problem is that your (newer)
> version was installed under a site-specific directory of a
> version-specific subdirectory (e.g. site_perl/5.6.1/ ).
> It is otherwise common that a site specific directory hides
> the base directories, so a clean solution is just to reinstall
> all site specific Perl modules after each Perl upgrade.
Hmm, they are both version 5.8.8. I already upgraded all sperate modules and
removed the old site_perl directory...

> The utf-specific perl data files need to be copied to a
> chroot subtree: [..]
D'oh. Ok, thanks, must have missed that. :\

Tillman
-- 
View this message in context: http://www.nabble.com/Certain-Spam-prevents-Spamassassin-from-scanning-it-tp14226649p14242041.html
Sent from the SpamAssassin - Users mailing list archive at Nabble.com.


Re: Certain Spam prevents Spamassassin from scanning it

Posted by Mark Martinec <Ma...@ijs.si>.
> Turns out that upgrading my perl version actually downgraded my libnet
> version. :\  They seem to include libnet with perl now, but as an older
> version. I still have libnet installed (1.21), but perl uses the old one
> from the basepackage.. What shall I do? Is it ok to simply
> delete /usr/lib/perl5/5.8.8/Net? 

You could delete it, but I guess you problem is that your (newer)
version was installed under a site-specific directory of a
version-specific subdirectory (e.g. site_perl/5.6.1/ ).
It is otherwise common that a site specific directory hides
the base directories, so a clean solution is just to reinstall
all site specific Perl modules after each Perl upgrade.
(You may then delete the site_perl subdirectories belonging
to older Perl versions).

Make sure your libnet is NOT a version 1.20, which is broken.
You need libnet-1.21 (or 1.19).

> > Does the same happen when spamassassin is invoked from
> > a command line, e.g. su vscan -c 'spamassassin -t -D <0.msg'
>
> I tried, and it works fine (even when running in an utf8 shell).
> So it just doesn't work under amavis. How can I find out why?

The utf-specific perl data files need to be copied to a
chroot subtree:

README_FILES/README.chroot

# UTF8 data files needed by Perl Unicode support:
cp -pR /usr/local/lib/perl5/5.8.7/unicore usr/local/lib/perl5/site_perl/

  Mark

Re: Certain Spam prevents Spamassassin from scanning it

Posted by tillman <ti...@nuschkys.net>.

> Older versions of Net::SMTP (libnet) did not support ORCPT option
> and issue a warning. Not a serious problem and unrelated to 
> your other problem. (btw, current versions of amavisd-new
> no longer use Net::SMTP / libnet)
Turns out that upgrading my perl version actually downgraded my libnet
version. :\
They seem to include libnet with perl now, but as an older version. I still
have 
libnet installed (1.21), but perl uses the old one from the basepackage..
What
shall I do? Is it ok to simply delete /usr/lib/perl5/5.8.8/Net?
-- 
View this message in context: http://www.nabble.com/Certain-Spam-prevents-Spamassassin-from-scanning-it-tp14226649p14236933.html
Sent from the SpamAssassin - Users mailing list archive at Nabble.com.


Re: Certain Spam prevents Spamassassin from scanning it

Posted by Mark Martinec <Ma...@ijs.si>.
Tillman,

> Net::SMTP::recipient:
>   unknown option(s) ORCPT - ignored at (eval 65) line 251

> Oh, and does anyone know where the last line comes from? Appeared after the
> last perl upgrade...

Older versions of Net::SMTP (libnet) did not support ORCPT option
and issue a warning. Not a serious problem and unrelated to 
your other problem. (btw, current versions of amavisd-new
no longer use Net::SMTP / libnet)

  Mark