spamd problem with perl

redesb

Verified User
Joined
May 10, 2004
Messages
191
Location
Spain
I find the bellow error in /var/log/maillog:

Aug 9 03:30:02 exp3 spamd[1591]: spamd: connection from localhost [127.0.0.1] at port 32925
Aug 9 03:30:02 exp3 spamd[1591]: spamd: setuid to admin succeeded
Aug 9 03:30:02 exp3 spamd[1591]: spamd: processing message <1155086983.7002.7.camel@fc4> for admin:500
Aug 9 03:30:02 exp3 spamd[1591]: Can't locate URI/Escape.pm in @INC (@INC contains: ../lib /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/5.8.5/i386-linux-thread-multi /usr/lib/perl5/5.8.5 /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.4 /usr/lib/perl5/site_perl/5.8.3 /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl/5.8.1 /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.4/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-mult
Aug 9 03:30:02 exp3 spamd[1591]: Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Plugin/SPF.pm line 288, <GEN6> line 24.
Aug 9 03:30:02 exp3 spamd[1591]: spamd: clean message (0.0/5.0) for admin:500 in 0.0 seconds, 733 bytes.
Aug 9 03:30:02 exp3 spamd[1591]: spamd: result: . 0 - scantime=0.0,size=733,user=admin,uid=500,required_score=5.0,rhost=localhost,raddr=127.0.0.1,rport=32925,mid=<1155086983.7002.7.camel@fc4>,autolearn=ham
Aug 9 03:30:02 exp3 spamd[1589]: prefork: child states: II

Any help welcomed.
 
module installed

Thanks gejopaul,

More easy, I do 'yum install perl-URI' thats all :) on CentOS 4.3
 
Thanx, but the only error I get is:

Aug 15 12:09:14 s01 spamd[1218]: spamd: connection from host140 [127.0.0.1] at port 37680
Aug 15 12:09:14 s01 spamd[1218]: spamd: setuid to admin succeeded
Aug 15 12:09:14 s01 spamd[1218]: spamd: processing message <E1GCvr6-00049H-BF@ns2> for admin:500
Aug 15 12:09:14 s01 spamd[1218]: Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Plugin/SPF.pm line 288, <GEN242> line 573.
Aug 15 12:09:17 s01 spamd[1218]: spamd: clean message (-1.6/5.0) for admin:500 in 3.0 seconds, 21777 bytes.
Aug 15 12:09:17 s01 spamd[1218]: spamd: result: . -1 - AWL,BAYES_00,HTML_90_100,HTML_MESSAGE,MIME_HTML_ONLY,NO_REAL_NAME scantime=3.0,size=21777,user=admin,uid=500,required_score=5.0,rhost=host140,raddr=127.0.0.1,rport=37680,mid=<E1GCvr6-00049H-BF@ns2>,bayes=5.24191801076768e-13,autolearn=no
Aug 15 12:09:17 s01 spamd[24643]: prefork: child states: II
 
missing perl module

this problem is happen because of the missing perl module Mail::SPF::Query
can you please paste the output of
#perl -V
#locate SPF.pm (I think this module is missing)

can you please check whether these packages are missing in your server?
please install the same softwares for fedora 3 from dag-wieers.com
Code:
wget http://dag.wieers.com/packages/perl-IO-Socket-SSL/perl-IO-Socket-SSL-0.97-1.1.fc2.rf.noarch.rpm
wget http://dag.wieers.com/packages/perl-Net-SSLeay/perl-Net-SSLeay-1.25-3.1.fc2.rf.x86_64.rpm
wget http://dag.wieers.com/packages/perl-Net-SSLeay/perl-Net-SSLeay-1.25-3.1.fc2.rf.i386.rpm
wget http://dag.wieers.com/packages/perl-Mail-SPF-Query/perl-Mail-SPF-Query-1.999.1-1.1.fc2.rf.noarch.rpm
wget http://dag.wieers.com/packages/perl-Net-CIDR-Lite/perl-Net-CIDR-Lite-0.20-1.1.fc2.rf.noarch.rpm
wget http://dag.wieers.com/packages/perl-Sys-Hostname-Long/perl-Sys-Hostname-Long-1.4-1.1.fc2.rf.noarch.rpm
wget  http://rpm.pbone.net/index.php3/stat/4/idpl/1203546/com/perl-URI-1.30-1.noarch.rpm.html
wget ftp://ftp.uni-bayreuth.de/pub/linux/fedoralegacy/fedora/2/os/i386/perl-URI-1.30-1.noarch.rpm

if autolearn=no is not changing to autolearn=yes
adding this to your user_prefs file to see if it enables it:
bayes_auto_learn 1
 
Last edited:
gejopaul, it seems that my server is only missing the last package in your list. Could that be the trick? Everything else is installed properly.
 
please install

please install the missing package for fedora and test it and check all the packages are installed by using the
#rpm -qa |grep perl
 
How to fix this one on FreeBSD 6 ?

Is there a package or port?

For your information , RPM not works on FreeBSD

Thanks in Advance
Vincent
 
can you use cpan ?
if yes install modules via cpan
and reinstall spammassassin

cpan> install Mail::SpamAssassin
and what module you want, dependancy are automaticly added
 
i did install URI::Escape and install Mail::SpamAssassin , it seem to work.

Thanks mate!
 
Having the same problem here and just wanted to get clear on the repair.
centOS4

Error:

Jan 11 07:19:53 snchelpdesk spamd[6330]: spamd: connection from localhost [127.0.0.1] at port 43403
Jan 11 07:19:53 snchelpdesk spamd[6330]: spamd: setuid to glbriadmin succeeded
Jan 11 07:19:53 snchelpdesk spamd[6330]: spamd: processing message <01c7357c$33a9eea0$6c822ecf@tendencybondsman> for glbriadmin:504
Jan 11 07:19:53 snchelpdesk spamd[6330]: Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Plugin/SPF.pm line 274, <GEN1459> line 43.
Jan 11 07:19:53 snchelpdesk spamd[6330]: spf: Mail::SPF::Query 1.996 or later required, this is
Jan 11 07:19:56 snchelpdesk spamd[6330]: spamd: clean message (4.8/5.0) for glbriadmin:504 in 3.0 seconds, 1496 bytes.
Jan 11 07:19:56 snchelpdesk spamd[6330]: spamd: result: . 4 - BAYES_00,DATE_IN_FUTURE_03_06,RCVD_IN_BL_SPAMCOP_NET,RCVD_IN_XBL scantime=3.0,size=1496,user=glbriadmin,uid=504,required_score=5.0,rhost=localhost,raddr=127.0.0.1,rport=43403,mid=<01c7357c$33a9eea0$6c822ecf@tendencybondsman>,bayes=1.11022302462516e-16,autolearn=no


Output of perl -V:

Characteristics of this binary (from libperl):
Compile-time options: DEBUGGING MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
Built under linux
Compiled at Dec 21 2005 06:35:04
@INC:
/usr/lib/perl5/5.8.5/i386-linux-thread-multi
/usr/lib/perl5/5.8.5
/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.2/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.1/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.5
/usr/lib/perl5/site_perl/5.8.4
/usr/lib/perl5/site_perl/5.8.3
/usr/lib/perl5/site_perl/5.8.2
/usr/lib/perl5/site_perl/5.8.1
/usr/lib/perl5/site_perl/5.8.0
/usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.4/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.2/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.5
/usr/lib/perl5/vendor_perl/5.8.4
/usr/lib/perl5/vendor_perl/5.8.3
/usr/lib/perl5/vendor_perl/5.8.2
/usr/lib/perl5/vendor_perl/5.8.1
/usr/lib/perl5/vendor_perl/5.8.0
/usr/lib/perl5/vendor_perl

Output of rpm -qa |grep perl:

perl-URI-1.30-4
perl-XML-Parser-2.34-5
perl-XML-Grove-0.46alpha-27
perl-Crypt-SSLeay-0.51-5
perl-Filter-1.30-6
perl-HTML-Tagset-3.03-30
perl-libwww-perl-5.79-5
perl-libxml-perl-0.07-30
perl-XML-Encoding-1.01-26
perl-XML-NamespaceSupport-1.08-6
perl-XML-SAX-0.12-7
perl-XML-Twig-3.13-6
perl-XML-LibXML-Common-0.13-7
perl-5.8.5-24.RHEL4
perl-HTML-Parser-3.35-6
perl-XML-Dumper-0.71-2
perl-Convert-ASN1-0.18-3
perl-LDAP-0.31-5
perl-XML-LibXML-1.58-1



5 lines above and below line 274: in /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Plugin/SPF.pm

my $query;
eval {
require Mail::SPF::Query;
if (!defined $Mail::SPF::Query::VERSION || $Mail::SPF::Query::VERSION < 1.996) {
die "spf: Mail::SPF::Query 1.996 or later required, this is $Mail::SPF::Query::VERSION\n";
}
$query = Mail::SPF::Query->new (ip => $ip,
sender => $scanner->{sender},
helo => $helo,
debug => 0,
trusted => 0);
};
 
Back
Top