openwrt / openwrt/packages

spamassassin: spamd or spamassassin won't run - SpamAssassin.pm missing

Open
#20,561 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Makefile
Stars
4.6k
Forks
4k
Avg merge
3d 12h
Merged PRs (30d)
134

Description

Maintainer: @dangowrt
Environment: x86/64 22.03.2

Description:

spamassassin package does not contain SpamAssassin.pm so consequently various components do not function.
Discovered when trying to get Exim to use spamd.
Does not recognise AnyDBM dependency is installed when it is.
There are also no init.d scripts to start the service.

root@Router:~# perl -T /usr/bin/spamd 
Can't locate Mail/SpamAssassin.pm in @INC (you may need to install the Mail::SpamAssassin module) (@INC contains: /usr/lib/perl5/5.28) at /usr/bin/spamd line 240.
BEGIN failed--compilation aborted at /usr/bin/spamd line 240.
root@Router:~#
root@Router:~# locate SpamAssassin.pm
root@Router:~# 

AnyDBM perl package is installed, but sa_awl doesn't think so:

root@Router:~# perl -T /usr/bin/sa-awl 
No DBM package was successfully found or installed at /usr/lib/perl5/5.28/AnyDBM_File.pm line 17.
Compilation failed in require at /usr/bin/sa-awl line 65.
BEGIN failed--compilation aborted at /usr/bin/sa-awl line 65.
root@Router:~# 
root@Router:~# 
root@Router:~# locate AnyDBM_File.pm
/usr/lib/perl5/5.28/AnyDBM_File.pm
root@Router:~# 
root@Router:~# opkg list-installed | grep anydbm
perlbase-anydbm-file - 5.28.1-7
root@Router:~# 

Other components requiring SpamAssassin.pm:

root@Router:~# perl -T /usr/bin/sa-compile 
Can't locate Mail/SpamAssassin.pm in @INC (you may need to install the Mail::SpamAssassin module) (@INC contains: /usr/lib/perl5/5.28) at /usr/bin/sa-compile line 62.
BEGIN failed--compilation aborted at /usr/bin/sa-compile line 62.
root@Router:~# 
root@Router:~# perl -T /usr/bin/sa-learn 
Can't locate Mail/SpamAssassin.pm in @INC (you may need to install the Mail::SpamAssassin module) (@INC contains: /usr/lib/perl5/5.28) at /usr/bin/sa-learn line 64.
BEGIN failed--compilation aborted at /usr/bin/sa-learn line 64.
root@Router:~# 
root@Router:~# perl -T /usr/bin/sa-update 
Can't locate Mail/SpamAssassin.pm in @INC (you may need to install the Mail::SpamAssassin module) (@INC contains: /usr/lib/perl5/5.28) at /usr/bin/sa-update line 134.
BEGIN failed--compilation aborted at /usr/bin/sa-update line 134.
root@Router:~# 

List of installed perl packages:

root@Router:~# opkg list-installed | grep perl
perl - 5.28.1-7
perl-dbi - 1.643+perl5.28-1
perl-html-parser - 3.75+perl5.28-1
perl-html-tagset - 3.20+perl5.28-4
perl-http-date - 6.05+perl5.28-2
perl-net-dns - 1.35+perl5.28-1
perl-netaddr-ip - 4.079+perl5.28-1
perlbase-anydbm-file - 5.28.1-7
perlbase-archive - 5.28.1-7
perlbase-autoloader - 5.28.1-7
perlbase-autosplit - 5.28.1-7
perlbase-b - 5.28.1-7
perlbase-base - 5.28.1-7
perlbase-benchmark - 5.28.1-7
perlbase-bytes - 5.28.1-7
perlbase-class - 5.28.1-7
perlbase-config - 5.28.1-7
perlbase-cpan - 5.28.1-7
perlbase-cwd - 5.28.1-7
perlbase-data - 5.28.1-7
perlbase-dbm-filter - 5.28.1-7
perlbase-digest - 5.28.1-7
perlbase-dirhandle - 5.28.1-7
perlbase-dynaloader - 5.28.1-7
perlbase-encode - 5.28.1-7
perlbase-errno - 5.28.1-7
perlbase-essential - 5.28.1-7
perlbase-extutils - 5.28.1-7
perlbase-fcntl - 5.28.1-7
perlbase-feature - 5.28.1-7
perlbase-file - 5.28.1-7
perlbase-filehandle - 5.28.1-7
perlbase-getopt - 5.28.1-7
perlbase-hash - 5.28.1-7
perlbase-http-tiny - 5.28.1-7
perlbase-i18n - 5.28.1-7
perlbase-integer - 5.28.1-7
perlbase-io - 5.28.1-7
perlbase-ipc - 5.28.1-7
perlbase-list - 5.28.1-7
perlbase-locale - 5.28.1-7
perlbase-mime - 5.28.1-7
perlbase-net - 5.28.1-7
perlbase-opcode - 5.28.1-7
perlbase-ostype - 5.28.1-7
perlbase-params - 5.28.1-7
perlbase-perlio - 5.28.1-7
perlbase-pod - 5.28.1-7
perlbase-posix - 5.28.1-7
perlbase-re - 5.28.1-7
perlbase-safe - 5.28.1-7
perlbase-scalar - 5.28.1-7
perlbase-selectsaver - 5.28.1-7
perlbase-selfloader - 5.28.1-7
perlbase-socket - 5.28.1-7
perlbase-storable - 5.28.1-7
perlbase-symbol - 5.28.1-7
perlbase-sys - 5.28.1-7
perlbase-tap - 5.28.1-7
perlbase-term - 5.28.1-7
perlbase-test - 5.28.1-7
perlbase-text - 5.28.1-7
perlbase-tie - 5.28.1-7
perlbase-time - 5.28.1-7
perlbase-unicore - 5.28.1-7
perlbase-universal - 5.28.1-7
perlbase-utf8 - 5.28.1-7
perlbase-xsloader - 5.28.1-7
spamassassin - 3.4.6+perl5.28-1
spamc-ssl - 3.4.6+perl5.28-1

List of "spam" packages installed:

root@Router:~# 
root@Router:~# opkg list-installed | grep spam
spamassassin - 3.4.6+perl5.28-1
spamc-ssl - 3.4.6+perl5.28-1
root@Router:~# 

Raised it inside forum initially, but perhaps bug report is more suitable, apologies if thats not the case.

Thank you.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the spamassassin package definition and the installed entry points /usr/bin/spamd, /usr/bin/sa-awl, /usr/bin/sa-compile, /usr/bin/sa-learn, and /usr/bin/sa-update. Verify that Mail/SpamAssassin.pm is packaged, AnyDBM_File can load its DBM backend, and service init scripts are provided; done means these commands run on the reported OpenWrt environment.

Written by the indexing model from the issue text.

Assessment

Tech stack
perl
Domain
build-system, devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.