I posted already the information below to the bug http://bugs.gentoo.org/show_bug.cgi?id=84639 but now I am opening a new bug for 3.4.0 since the old bug is marked as resolved/fixed. The currently active DSPAM ebuild has serval syntax errors and internal ebuild errors. Allow me quickly to summarize some issues: - The new DSPAM has the possibility to use DSPAM as an deamon. The ebuild does not build and does not install the deamon. - The DSPAM documentation does mention the preference extensions to be only available for MySQL and PostgreSQL (for now). The ebuild still does enable the preference extensions in Oracle (it does not hurt however). - The Oracle part has a line in the ebuild with just the text "--with-oracle-version=MAJOR". This is going to fail on every client who has the Oracle USE flag enabled because "--with-oracle-version=MAJOR" is not an valid option or command (but it is a valid ./configure command) - The ebuild mess up the CONFIG_PROTECT_MASK variable and every configuration in the HOMEDIR and DATADIR is OVERWRITTEN when using the current ebuild. This is wrong and should be changed to NOT overwrite the HOMEDIR and DATADIR. - The ebuild fail to create a empty system.log in the LOGDIR. Normaly DSPAM does log into /var/log but if you have an system.log in your HOMEDIR, then DSPAM will use that. Which does blow /etc/mail/dspam up for nothing (I have LVM2 on my system and / is only 100MB. After using the ebuild my / was all the time full. I never realized that DSPAM did produce that system.log in /etc/mail/dspam. Moving it out to /var/log/dspam.log and adding a symlink to /etc/mail/dspam/dpsam.log solves this issue). - The ebuild do mess up the currently installed dspam.conf. New entries from the source of DSPAM are never installed on the system if the user already has a DSPAM installation. - The ebuild does take care of SQLite 3 but does not install the purge script for SQLite (if only sqlite3 is in the USE flags) Reproducible: Always Steps to Reproduce: 1. 2. 3.
Created attachment 53883 [details] mail-filter/dspam/files/dspam.cron New dspam.cron fixing some old problems with config files location and SQL scripts path.
Created attachment 53884 [details] mail-filter/dspam/files/dspam.rc Gentoo init.d script to start DSPAM in deamon mode (if needed. Old method still works).
Created attachment 53885 [details] mail-filter/dspam/dspam-3.4.0.ebuild This is the ebuild I am using to build my DSPAM installation since 3.4 beta. The attached ebuild does build the deamon for DSPAM and installs a Gentoo init.d script for using the deamon, but does not force you to use the deamon mode. I this ebuild I have much of the database setup simplified (less prompts for RDBMS password). What I don't have enabled in this ebuild is the possibility to use/install/configure the database on a remote system. For now the DSPAM database needs to be on the same system as the DSPAM installation. I can easy add that feature, since I did the same with SQLgrey (http://bugs.gentoo.org/show_bug.cgi?id=71535http://bugs.gentoo.org/show_bug.cgi?id=71535) and have the code already handy.
Hi, Your suggestions are more than welcome. I've just been recently offline for a while. Sorry about that. Rolling in now. Ciao ST Lim
I'll be updating it to CVS with minor changes. :) Thanx for the help.
Hi Lim Swee Tat thanks for beeing so quick. I have a question regarding the ebuild now in CVS: You use now "--enable-virtual-users-users" for enabling virtual users but in the documentation there is only "--enable-virtual-users" mentioned. I think you have made a typo there. You use now "src/tools.mysql_drv/virtual-users_users.sql" but in the archive from http://dspam.nuclearelephant.com/sources/dspam-3.4.0.tar.gz I only can find "src/tools.mysql_drv/virtual_users.sql". PostgreSQL and Oracle have the same additional "-user" in the newins line and in the configuration section but in the archive the referenced sql files are not included. I think you have made a typo there. In the info output for Oracle there is a typo. It should be "Please" instead of "Pleae" (In the line einfo "Pleae read your dspam.conf, oracle.data and the README for"). Thank you for removing the neutral-network stuff. Did not realized that this does not exist anymore. And thank you for adding a new way of handling virtual users. Kind Regards Steve
BTW: 3.4.1 is out (I am runing it already) RELEASE 3.4.1-STABLE This version is a maintenance release and contains bug and security-related fixes and minor enhancements. BUGFIX: Broken returnCodes option does not work in daemon mode BUGFIX: Improper handling of empty arguments BUGFIX: Missing RSET functionality in LMTP server mode BUGFIX: Corpus feeding fails on messages with DSPAM signatures BUGFIX: TrackSources reports spam from users forwarding spam misses BUGFIX: 5.1.0 Initialization error fails to RSET BUGFIX: False positives are delivered if no matching signature BUGFIX: Opt-in/out preferences support lacking in admin.cgi BUGFIX: When listener fails, file descriptors remain open BUGFIX: When file descriptors fail, their invalid state can lead to a crash BUGFIX: Syslogging does not use LOG_NOWAIT and hangs if syslog breaks BUGFIX: Some sessions using multiple RCPT TOs process for last recipient only BUGFIX: Socket communications do not send \r SECFIX: Fixed possible argument overflow vulnerability in authenticated server Threat Level: Low; requires local relay authentication and routing Enhancements and other changes: DSPAM Protocol Enhancements In an attempt to steer away from DLMTP (DSPAM-proprietary LMTP), the arguments list sent by the dspam client are now sent via a DSPAMPROCESSMODE service tag advertised when the LMTP server recognizes a client's LHLO ident and later authenticates. SMTP Support Addition In addition to LMTP delivery, SMTP delivery has been added. As a result, previous LMTPDeliveryHost options have changed. See dspam.conf for more information. DeliveryProto option has been added to specify LMTP or SMTP. False Positive Alias: The false positive alias prefix has been changed from fp- to notspam- when using ParseToHeader. This helps prevent a conflict with an existing email account. ParseToHeader Changes: Two new configuration options are used in conjunction with ParseToHeader: ChangeUserOnParse: Sets the current user to match the local part after prefix ChangeModeOnParse: Sets the processing mode to match the prefix provided eliminating the need for aliases when configured with ChangeUserOnParse. LMTP Commandline Changes: The LMTP commandline options have changed to support multiple rcpt tos and support SMTP delivery: --lmtp-rcpt-to and --lmtp-recipient have been changed to --rcpt-to, which can be a list of users similar to --user. If no recipient list is specified, the recipient list will mirror the user list. --lmtp-mail-from= has been changed to --mail-from=
Regarding the "users-users" and "users_users" typos, see bug #86099.
Hi, I think I had most of these fixed. :) Should be closed rite??