================ PROBLEM DESCRIPTION ========================
dspam used to work perfectly during about one month, and now it crashes:

$ /usr/bin/dspam --stdout --deliver=innocent,spam --mode=teft < 
Mail/aazut/cur/1190888219.25175.elfyE\:2\,S
Exception en point flottant

[That's French for "Floating point exception".]

The problem does not depend on the message being processed.

================ OPERATING SYSTEM INFO ======================
$ uname -a
Linux localhost 2.6.15-28-686 #1 SMP PREEMPT Wed Jul 18 22:57:30 UTC 2007 i686 
GNU/Linux

================ VERSION INFO ===============================
# dspam --version

DSPAM Anti-Spam Suite 3.6.4 (agent/library)

Copyright (c) 2002-2006 Deep Logic, Inc.
http://dspam.nuclearelephant.com

DSPAM may be copied only under the terms of the GNU General Public License,
a copy of which can be found with the DSPAM distribution kit.

Configuration 
parameters: --host=i486-linux-gnu --build=i486-linux-gnu --prefix=/usr 
--includedir=/usr/include
--mandir=/usr/share/man --infodir=/usr/share/info --with-logdir=/var/log/dspam/ 
--localstatedir=/var
--libexecdir=/usr/lib/dspam --srcdir=.. --with-dspam-home=/var/spool/dspam 
--sysconfdir=/etc/dspam
--enable-domain-scale --enable-signature-headers 
--with-delivery-agent=/usr/bin/procmail
--enable-daemon --with-mysql-includes=/usr/include/mysql 
--with-pgsql-includes=/usr/include/postgresql
--with-storage-driver=libdb4_drv,mysql_drv,pgsql_drv,sqlite3_drv,hash_drv 
--enable-ldap --enable-debug
--enable-virtual-users --enable-preferences-extension --enable-clamav

================ CONFIGURATION INFORMATION ====================
$ grep "^[^#]" /etc/dspam/dspam.conf
Home /var/spool/dspam
StorageDriver /usr/lib/dspam/libhash_drv.so
TrustedDeliveryAgent "/usr/bin/procmail"
OnFail error
Trust root
Trust dspam
Trust mail
Trust mailnull
Trust smmsp
Trust daemon
TrainingMode teft
TestConditionalTraining on
Feature chained
Feature whitelist
Algorithm graham burton
PValue graham
Preference "spamAction=tag"
Preference "signatureLocation=message"  # 'message' or 'headers'
Preference "showFactors=on"
AllowOverride trainingMode
AllowOverride spamAction spamSubject
AllowOverride statisticalSedation
AllowOverride enableBNR
AllowOverride enableWhitelist
AllowOverride signatureLocation
AllowOverride showFactors
AllowOverride optIn optOut
AllowOverride whitelistThreshold
HashRecMax              98317
HashAutoExtend          on
HashMaxExtents          0
HashExtentSize          49157
HashMaxSeek             100
HashConnectionCache     10
Notifications   off
PurgeSignatures 14          # Stale signatures
PurgeNeutral    90          # Tokens with neutralish probabilities
PurgeUnused     90          # Unused tokens
PurgeHapaxes    30          # Tokens with less than 5 hits (hapaxes)
PurgeHits1S     15          # Tokens with only 1 spam hit
PurgeHits1I     15          # Tokens with only 1 innocent hit
LocalMX 127.0.0.1
SystemLog on
UserLog   on
Opt out
ProcessorBias on
Include /etc/dspam/dspam.d/

================ DEBUG INFO ===============================
# cat /var/log/dspam/dspam.debug
30258: [09/27/2007 13:19:00] No QuarantineAgent option found. Using standard 
quarantine.
30258: [09/27/2007 13:19:00] DSPAM Instance Startup
30258: [09/27/2007 13:19:00] input args: /usr/bin/dspam --user 
eric --debug --verbose --stdout --deliver=innocent,spam --mode=teft
30258: [09/27/2007 13:19:00] pass-thru args: --verbose
30258: [09/27/2007 13:19:00] processing user eric
30258: [09/27/2007 13:19:00] uid = 0, euid = 0, gid = 0, egid = 117
30258: [09/27/2007 13:19:00] loading preferences for user eric
30258: [09/27/2007 13:19:00] Loading preference 'trainingMode' = 'TEFT'
30258: [09/27/2007 13:19:00] Loading preference 'spamAction' = 'tag'
30258: [09/27/2007 13:19:00] Loading preference 'enableBNR' = 'on'
30258: [09/27/2007 13:19:00] Loading preference 'enableWhitelist' = 'on'
30258: [09/27/2007 13:19:00] Loading preference 'statisticalSedation' = '5'
30258: [09/27/2007 13:19:00] Loading preference 'signatureLocation' 
= 'message'
30258: [09/27/2007 13:19:00] Loading preference 'whitelistThreshold' = '10'
30258: [09/27/2007 13:19:00] Loading preference 'showFactors' = 'off'
30258: [09/27/2007 13:19:00] Loading preference 'trainingMode' = 'TEFT'
30258: [09/27/2007 13:19:00] Loading preference 'spamAction' = 'tag'
30258: [09/27/2007 13:19:00] Loading preference 'enableBNR' = 'on'
30258: [09/27/2007 13:19:00] Loading preference 'enableWhitelist' = 'on'
30258: [09/27/2007 13:19:00] Loading preference 'statisticalSedation' = '5'
30258: [09/27/2007 13:19:00] Loading preference 'signatureLocation' 
= 'message'
30258: [09/27/2007 13:19:00] Loading preference 'whitelistThreshold' = '10'
30258: [09/27/2007 13:19:00] Loading preference 'showFactors' = 'off'
30258: [09/27/2007 13:19:00] loaded default preferences externally
30258: [09/27/2007 13:19:00] using /var/spool/dspam/opt-in/local/eric.dspam as 
path
30258: [09/27/2007 13:19:00] using /var/spool/dspam/opt-out/local/eric.nodspam 
as path
30258: [09/27/2007 13:19:00] sedation level set to: 5

================ STACK BACKTRACE ===============================
_ds_init_storage () from /usr/lib/dspam/libhash_drv.so
_hash_drv_seek () from /usr/lib/dspam/libhash_drv.so
_hash_drv_get_spamrecord () from /usr/lib/dspam/libhash_drv.so
_ds_get_spamrecord () from /usr/lib/dspam/libhash_drv.so
_ds_get_spamrecord () from /usr/lib/libdspam.so.7
_ds_getall_spamrecords () from /usr/lib/dspam/libhash_drv.so
_ds_getall_spamrecords () from /usr/lib/libdspam.so.7
_ds_operate () from /usr/lib/libdspam.so.7
dspam_process () from /usr/lib/libdspam.so.7
process_message ()
process_users ()
main()

================ FILES OPENED ==================================
# strace -f -etrace=open /usr/bin/dspam --user 
eric --stdout --deliver=innocent,spam --mode=teft < 
Mail/aazut/cur/1190888219.25175.elfyE\:2\,S
open("/etc/ld.so.cache", O_RDONLY)      = 3
open("/usr/lib/libdspam.so.7", O_RDONLY) = 3
open("/lib/tls/i686/cmov/libm.so.6", O_RDONLY) = 3
open("/lib/tls/i686/cmov/libdl.so.2", O_RDONLY) = 3
open("/usr/lib/libldap_r.so.2", O_RDONLY) = 3
open("/usr/lib/liblber.so.2", O_RDONLY) = 3
open("/lib/tls/i686/cmov/libpthread.so.0", O_RDONLY) = 3
open("/lib/tls/i686/cmov/libc.so.6", O_RDONLY) = 3
open("/lib/tls/i686/cmov/libresolv.so.2", O_RDONLY) = 3
open("/lib/tls/i686/cmov/libcrypt.so.1", O_RDONLY) = 3
open("/usr/lib/libsasl2.so.2", O_RDONLY) = 3
open("/usr/lib/libgnutls.so.12", O_RDONLY) = 3
open("/usr/lib/libtasn1.so.2", O_RDONLY) = 3
open("/usr/lib/libz.so.1", O_RDONLY)    = 3
open("/usr/lib/libgcrypt.so.11", O_RDONLY) = 3
open("/usr/lib/libgpg-error.so.0", O_RDONLY) = 3
open("/lib/tls/i686/cmov/libnsl.so.1", O_RDONLY) = 3
open("/etc/dspam/dspam.conf", O_RDONLY) = 3
open("/etc/dspam/dspam.d/", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 4
open("/etc/nsswitch.conf", O_RDONLY)    = 3
open("/etc/ld.so.cache", O_RDONLY)      = 3
open("/lib/tls/i686/cmov/libnss_compat.so.2", O_RDONLY) = 3
open("/etc/ld.so.cache", O_RDONLY)      = 3
open("/lib/tls/i686/cmov/libnss_nis.so.2", O_RDONLY) = 3
open("/lib/tls/i686/cmov/libnss_files.so.2", O_RDONLY) = 3
open("/etc/passwd", O_RDONLY)           = 3
open("/usr/lib/dspam/libhash_drv.so", O_RDONLY) = 3
open("/var/spool/dspam/data/local/eric/eric.prefs", O_RDONLY) = -1 ENOENT (No 
such file or directory)
open("/etc/dspam/default.prefs", O_RDONLY) = 3
open("/etc/dspam/default.prefs", O_RDONLY) = 3
open("/var/spool/dspam/group", O_RDONLY) = -1 ENOENT (No such file or 
directory)
open("/var/spool/dspam/data/local/eric/eric.lock", O_WRONLY|O_APPEND|O_CREAT, 
0666) = 3
open("/var/spool/dspam/data/local/eric/eric.css", O_RDWR) = 4
open("/var/spool/dspam/data/local/eric/eric.blocklist", O_RDONLY) = -1 ENOENT 
(No such file or directory)
--- SIGFPE (Floating point exception) @ 0 (0) ---
+++ killed by SIGFPE +++

================ HASHED FILES ====================
Available on demand.

I hope that helps,


-- 
Éric

Reply via email to