Bug 205923 - mail-filter/dspam directory structure broken
|
Bug#:
205923
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: major
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: mrness@gentoo.org
|
Reported By: hollow@gentoo.org
|
|
Component: Ebuilds
|
|
|
URL:
|
|
Summary: mail-filter/dspam directory structure broken
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2008-01-15 09:14 0000
|
there are a number of path problems with the current dspam.cron script:
1) DSPAM_CONFIGDIR lookup via getent, though DSPAM_HOME != DSPAM_CONFIGDIR
2) data dir is not in DSPAM_CONFIGDIR, but in DSPAM_HOME
and with the current logging settings:
1) no logging is done in /var/log/dspam, e.g. in dspam.c:2890 the directory
lookup is performed for HOME
2) logrotate fails if any of the logs mentioned in /etc/logrotate.d/dspam does
not exist (missingok should be used here)
(In reply to comment #0)
> there are a number of path problems with the current dspam.cron script:
>
> 1) DSPAM_CONFIGDIR lookup via getent, though DSPAM_HOME != DSPAM_CONFIGDIR
Don't understand what problem you have with DSPAM_CONFIGDIR. Are you saying
that it fails to detect the right location of dspam.conf? Keep in mind that
this script must be usable on all hosts, including those where dspam have been
installed ages ago.
> 2) data dir is not in DSPAM_CONFIGDIR, but in DSPAM_HOME
oops, I will fix dspam_logrotate execution in r10.
> and with the current logging settings:
>
> 1) no logging is done in /var/log/dspam, e.g. in dspam.c:2890 the directory
> lookup is performed for HOME
This directory gets installed only if ! use syslog || use debug.
> 2) logrotate fails if any of the logs mentioned in /etc/logrotate.d/dspam does
> not exist (missingok should be used here)
Ditto
(In reply to comment #1)
> > 1) no logging is done in /var/log/dspam, e.g. in dspam.c:2890 the directory
> > lookup is performed for HOME
>
> This directory gets installed only if ! use syslog || use debug.
>
> > 2) logrotate fails if any of the logs mentioned in /etc/logrotate.d/dspam does
> > not exist (missingok should be used here)
>
> Ditto
Yes, i have not enabled USE=syslog, but there are still no logfiles in this
directory, the only logging is done in users' ~/.dspam/<uid>.log
so either the logging is broken, or there has nothing been logged .. in any
case missingok in the logrotate script wouldn't hurt i guess (would at least
prevent messages from logrotate cron about file not found)
(In reply to comment #1)
> (In reply to comment #0)
> > there are a number of path problems with the current dspam.cron script:
> >
> > 1) DSPAM_CONFIGDIR lookup via getent, though DSPAM_HOME != DSPAM_CONFIGDIR
>
> Don't understand what problem you have with DSPAM_CONFIGDIR. Are you saying
> that it fails to detect the right location of dspam.conf? Keep in mind that
> this script must be usable on all hosts, including those where dspam have been
> installed ages ago.
It is working for me, just the comment in dspam.cron is a bit misleading:
# Something is wrong in passwd! Check if /etc/mail/dspam exists instead.
maybe add a note that the getent check is only for legacy reasons and nothing
is wrong with my /etc/passwd ..
All the issues have been fixed in r10.
When syslog flag is disabled, /var/log/dspam/dspam.log file is used instead.
I've just realized that dspam_logrotate must be executed in Home dir because
this is the location of system.log file.
Fixed in r11.