PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : spamassassin - fehlermeldung



DrGonzo
27.11.06, 09:10
Moin nochmal...

Im Procmail-log steht folgende Meldung, wenn eine Mail an spamassassin --report weitergeleitet wird:


Use of uninitialized value in quotemeta at /usr/lib/perl5/vendor_perl/5.8.6/Mail/SpamAssassin.pm line 928.


Ist das schlimm? Wird die Mail trotzdem gemeldet? Wie kann ich den Fehler beheben?

Tomek
29.11.06, 11:28
Welche Distribution hast du? Und welche Pakete von Spamassassin und Perl sind installiert?

DrGonzo
30.11.06, 18:39
Distri ist Suse 9.3 mit


perl-spamassassin 3.0.2
spamassassin 3.0.2
perl 5.8.6
perl-Apache-Filter 1.022
perl-Apache-Gallery 0.9.1
perl-Apache-Session 1.6
perl-Apache-SessionX 2.00b3
perl-AppConfig 1.56
perl-Arch 0.4.2
perl-Archive-Tar 1.08
perl-Archive-Zip 1.09
perl-Authen-SASL 2.08
perl-Authen-SASL-Cyrus 0.11
perl-Bootloader 0.2
perl-Config-Crontab 1.03
perl-Crypt-SSLeay 0.51
perl-Crypt-SmbHash 0.02
perl-Cyrus-IMAP 2.2.12
perl-Cyrus-SIEVE-managesieve 2.2.12
perl-DBD-mysql 2.9004
perl-DBI 1.47
perl-Data-ShowTable 3.3
perl-Digest-HMAC 1.01
perl-Digest-MD4 1.3
perl-Digest-SHA1 2.10
perl-HTML-Parser 3.45
perl-HTML-Tagset 3.04
perl-IO-stringy 2.109
perl-MIME-tools 5.415
perl-MailTools 1.60
perl-Net-DNS 0.48
perl-Net_SSLeay 1.25
perl-OpenCA-CRL 0.9.17
perl-OpenCA-OpenSSL 0.9.91
perl-OpenCA-X509 0.9.47
perl-PDA-Pilot 0.11.8
perl-Parse-RecDescent 1.80
perl-TermReadKey 2.21
perl-TermReadLine-Gnu 1.14
perl-Tie-IxHash 1.21
perl-URI 1.35
perl-X500-DN 0.28
perl-XML-Parser 2.34
perl-gettext 1.01
perl-libwww-perl 5.804

Blade
01.12.06, 21:07
Das ist nicht normal, was hast Du denn in der procmail-Config eingetragen?

DrGonzo
02.12.06, 16:16
In der /etc/procmailrc steht folgendes:


DROPPRIVS=yes
PATH=/bin:/usr/bin:/usr/local/bin
SHELL=/bin/sh

:0fw
* <300000
|/usr/bin/spamassassin

Ich glaube das hatte ich aus dem O'Reilly Buch zum Thema Spamassassin übernommen.

In meiner /home/icke/.procmailrc, über die ich die spam-trap laufen lasse, die ich eben nach /usr/bin/spamassassin -r umleiten will, steht das folgendermaßen geschrieben:


:0
*^TO.*klausbrause@viersaiten.org
|/usr/bin/spamassassin -r


Kurze Nebenfrage: Letzteres müsste ich doch auch in die /etc/procmailrc schreiben können, lass ich dann den Eintrag in der /etc/postfix/virtual so wie er ist, auch wenn die Mails an diese Adresse an keinen User gehen? Wenn ich den Eintrag rausnehme, werden die Mails doch gleich von Postfix abgeblockt!?

Blade
02.12.06, 16:34
Kannst Du Deine Frage etwas deutlicher stellen, so ganz habe ich den letzten Abschnitt nicht verstanden?

Klar kannst Du den Eintrag:

:0
*^TO.*klausbrause@viersaiten.org
|/usr/bin/spamassassin -r
in die /etc/procmailrc rein schreiben. Die Einträge in der /etc/procmailrc betreffen alle Mails, die über den Server laufen, unabhängig von Domain oder User.

michael.sprick
02.12.06, 16:52
Kann es evtl. sein, dass Du die Option rewrite_header benutzt, aber nicht alle Parameter angegeben hast?

poste doch mal deine /etc/spamassassin/local.cf...

Blade
02.12.06, 17:12
Bei der Distri Suse 9.3 findest Du sie unter /etc/mail/spamassassin/local.cf ...

DrGonzo
02.12.06, 18:20
# Add your own customisations to this file. See 'man Mail::SpamAssassin::Conf'
# for details of what can be tweaked.
#


# do not change the subject
# to change the subject, e.g. use
# rewrite_header Subject ****SPAM(_SCORE_)****
rewrite_header Subject

# Set the score required before a mail is considered spam.
# required_score 5.00

# uncomment, if you do not want spamassassin to create a new message
# in case of detecting spam
report_safe 0

Blade
02.12.06, 18:39
Schreib mal das rein:
rewrite_header Subject ****SPAM(_SCORE_)****

DrGonzo
02.12.06, 19:00
Ich habe an der local.cf nichts geändert. Die Standardeinstellung sollte doch eigentlich keine Fehler erzeugen, zumindest nicht solche, oder? Mal sehen, ob sich etwas ändert...

michael.sprick
02.12.06, 19:01
rewrite_header Subject


das hatte ich vermutet. Es fehlt ein Parameter. Wenn die Funktion quotemeta() nun alle metazeichen des zweiten Paramter maskieren soll, bekommt sie nur einen undefinierten Wert übergeben. Das führt dann zu der beschriebenen Fehlermeldung.

so sollte die Direktive benutzt werden:



rewrite_header <Tagname> <Tagvalue>

DrGonzo
03.12.06, 10:32
Funktioniert! Besten Dank!