Ich habe gestern Abend Spamassassin von Version 3.2.5-2+lenny2 auf 3.3.1-1. Beim anschließenden testen habe ich im Header der festgestellt, dass eingehende E-Mails nicht mehr durch den Spam-Filter laufen.
X-Spam-Flag: NO X-Spam-Score: 0 X-Spam-Level: X-Spam-Status: No, score=x tagged_above=-100 required=14.31 tests=[]
Eine erhöhung das Amavis Log Levels auf 4 brachte den Fehler zu Tage.
Aug 26 10:02:04 mx02.blog.cscholz.io prequeue_filter[28157]: (28157-01) (!!)SA failed: Can't locate object method "READ" via package "Amavis::IO::FileHandle" at /usr/local/share/perl/5.10.0/Mail/SpamAssassin/Message.pm line 143, <GEN71> line 169. at (eval 104) line 420, <GEN71> line 169.
Dre Grund dafür ist
package Amavis::IO::FileHandle now supports a method READ (i.e. invoked
by a perl functions sysread through a tied hash), which is needed by
SpamAssassin revisions since 2008-09-25 (3.3), bringing a little speedup
to transferring a message from amavisd to SpamAssassin, and avoiding a
Perl I/O bug (perl bug 39060; SA: bug 5985) on some installations;
Dieser Fehler ist in amavisd-new 2.6.2+ behoben, jedoch lässt sich amavisd-new nicht ohne Konflikte aus dem sid Zweig installieren, daher muss die Datei /usr/sbin/amavisd-new manuell angepasst werden. Dazu muss die Zeile nach SA prepare von
my($data_representation) = 'GLOB'; # pass data to SA as ARRAY or a GLOB
auf
my($data_representation) = 'ARRAY'; # pass data to SA as ARRAY or a GLOB
geändert werden.
5 Kommentare
Danke, die Änderung von /etc/sbin/amavisd-new hat meinen Spamfilter wieder zum funktionieren gebracht.
Danke!! 🙂
Grüsse
Basti
DANKE!!!
Jetzt geht es wieder. Gut beschrieben, super!
Gruß, franc
Für amavisd-new gibt es mittlerweile auch einen passenden backport, der das Problem behebt:
http://packages.debian.org/lenny-backports/amavisd-new
Danke – Du hast mich auf die richtige Fährte gebracht, eine dependency gibt es leider fälschlicherweise nicht zwischen den Paketen.
Gruß, Sven
Vielen Dank für den Hinweis.