FS#33995 - [dspam] package bugs/enhancements
Attached to Project:
Community Packages
Opened by Tom Kuther (teekay) - Sunday, 24 February 2013, 13:58 GMT
Last edited by Sergej Pupykin (sergej) - Thursday, 28 February 2013, 15:34 GMT
Opened by Tom Kuther (teekay) - Sunday, 24 February 2013, 13:58 GMT
Last edited by Sergej Pupykin (sergej) - Thursday, 28 February 2013, 15:34 GMT
|
Details
Description:
The dspam package could be enhanced to provide a better out-of-the-box experience. Following issues arose when I did a simple setup with postfix, dovecot and dovecot-antispam-hg: 1) support for syslog is disabled (FEATURE ENHANCEMENT) 2) logrotate complains about /var/log/dspam owning group not being "root", and missing files (BUG) 3) the dspamc binary has false file permissions, causing permission errors on /var/lib/dspam/data when being executed from other processes like dovecot, or any user != dspam (BUG) Solutions: * for 1) provide syslog support by adding following configure flags: --enable-syslog --with-logfile=/var/log/dspam/dspam.log * for 2) add missingok, su, and correct paths to logrotate script (system.log is in /var/lib/dspam, dspam.debug doesn't exist as --enable-debug is not set at configure time) /var/log/dspam/sql.errors /var/lib/dspam/system.log /var/log/dspam/dspam.debug /var/log/dspam/dspam.messages /var/log/dspam/dspam.log { weekly compress missingok su dspam dspam create 0644 dspam dspam } * for 3) set dspamc root:dspam setgid: chown root:dspam $pkgdir/usr/bin/dspamc chmod g+s $pkgdir/usr/bin/dspamc Additional info: * dspam-3.10.2-2 Steps to reproduce: 1. install dpsam 2. configure and start it 3. run "logrotate -f /etc/logrotate.d/dspam" 4. pipe something to dspamc, either directly from commandline, or e.g. via dovecot-antispam-hg plugin |
This task depends upon
Closed by Sergej Pupykin (sergej)
Thursday, 28 February 2013, 15:34 GMT
Reason for closing: Fixed
Additional comments about closing: thanks
Thursday, 28 February 2013, 15:34 GMT
Reason for closing: Fixed
Additional comments about closing: thanks
re 2) another approach to make logrotate happy would be
chmod 750 $pkgdir/var/log/dspam
this way su isn't needed, missingok ist still required anyways.
4) the dspam binary has wrong permission, 2510 is more sane
drop the line "chmod 0755 $pkgdir/usr/bin/*" from the PKGBUILD
5) The SQL scripts end up in /var/lib/dspam and cannot be read by others, install those to /usr/share/dspam instead.
6) enable clamav support
7) enable external lookup support
8) Install the handy dspam_maintenance script from crontrib/
I'm going to attach my final PKGBUILD and files, cherry pick new features as desired, but please fix at least the logrotate and file permission bugs.
dspam.logrotated (0.2 KiB)
dspam_maintenance.cron (0.2 KiB)