eWebtricity
02-28-2006, 01:15 PM
If your running Spamassassin 3.x and getting this error in your /usr/local/psa/var/log/maillog
Feb 28 12:13:00 u15158810 spamd[749]: Can't locate Mail/SPF/Query.pm in @INC (@INC contains: ../lib /mnt/dar/tmp/spamassassin-root//usr/lib/perl5/vendor_perl/5.8.3 /usr/lib/perl5/5.8.3/i386-linux-thread-multi /usr/lib/perl5/5.8.3
/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.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.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.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) at /usr/lib/perl5/vendor_perl/5.8.3/Mail/SpamAssassin/Plu
SpamAssassin (http://wiki.apache.org/spamassassin/SpamAssassin) 3.0 supports SPF to detect and penalize header forgery. This requires Mail::SPF::Query, a relatively new package that's not yet installed on most machines. You can confirm whether you have it by entering (perl -e 'require Mail::SPF::Query'). If you get the error "Can't locate Mail/SPF/Query.pm in @INC..." you need it.
To install SPF, do the following:
You will need these perl modules installed
Warning: prerequisite Net::CIDR::Lite 0.15 not found.
Warning: prerequisite Net::DNS 0.46 not found. We have 0.45.
Warning: prerequisite Sys::Hostname::Long 1 not found.
Grab them from CPAN
# perl -MCPAN -e shell
cpan> install Net::CIDR::Lite
cpan> install Net::DNS
cd /usr/local/src
wget http://spf.pobox.com/Mail-SPF-Query-1.997.tar.gz
tar xvzf Mail-SPF-Query-1.997.tar.gz
cd Mail-SPF-Query-1.997
perl Makefile.PL
make
make test
make install
That's it
Feb 28 12:13:00 u15158810 spamd[749]: Can't locate Mail/SPF/Query.pm in @INC (@INC contains: ../lib /mnt/dar/tmp/spamassassin-root//usr/lib/perl5/vendor_perl/5.8.3 /usr/lib/perl5/5.8.3/i386-linux-thread-multi /usr/lib/perl5/5.8.3
/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.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.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.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) at /usr/lib/perl5/vendor_perl/5.8.3/Mail/SpamAssassin/Plu
SpamAssassin (http://wiki.apache.org/spamassassin/SpamAssassin) 3.0 supports SPF to detect and penalize header forgery. This requires Mail::SPF::Query, a relatively new package that's not yet installed on most machines. You can confirm whether you have it by entering (perl -e 'require Mail::SPF::Query'). If you get the error "Can't locate Mail/SPF/Query.pm in @INC..." you need it.
To install SPF, do the following:
You will need these perl modules installed
Warning: prerequisite Net::CIDR::Lite 0.15 not found.
Warning: prerequisite Net::DNS 0.46 not found. We have 0.45.
Warning: prerequisite Sys::Hostname::Long 1 not found.
Grab them from CPAN
# perl -MCPAN -e shell
cpan> install Net::CIDR::Lite
cpan> install Net::DNS
cd /usr/local/src
wget http://spf.pobox.com/Mail-SPF-Query-1.997.tar.gz
tar xvzf Mail-SPF-Query-1.997.tar.gz
cd Mail-SPF-Query-1.997
perl Makefile.PL
make
make test
make install
That's it