Package: spamass-milter
Version: 0.3.1-10a1
Severity: important

Once in a while, spamass-milter segfaults. It is used with sendmail. I followed 
the
instructions in /usr/share/doc/spamass-milter/README.Debian.gz an produced the 
following info from the core file. I hope it helps to track down the problem...

root@eroski:/var/cores# gdb /usr/sbin/spamass-milter 
./core.spamass-milter.1683.eroski.1374655977 
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/sbin/spamass-milter...done.
[New Thread 1685]
[New Thread 1683]
[New Thread 21485]
[New Thread 29836]

warning: Can't read pathname for load map: Eingabe-/Ausgabefehler.
Reading symbols from /usr/lib/libmilter.so.1.0.1...(no debugging symbols 
found)...done.
Loaded symbols for /usr/lib/libmilter.so.1.0.1
Reading symbols from /usr/lib/libstdc++.so.6...(no debugging symbols 
found)...done.
Loaded symbols for /usr/lib/libstdc++.so.6
Reading symbols from /lib/libm.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /lib/libgcc_s.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libgcc_s.so.1
Reading symbols from /lib/libpthread.so.0...(no debugging symbols found)...done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /lib/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols 
found)...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Core was generated by `/usr/sbin/spamass-milter -P /var/run/spamass/spamass.pid 
-f -p /var/run/spamass'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f2265929760 in ?? () from /usr/lib/libmilter.so.1.0.1
(gdb) thread apply all where

Thread 5 (Thread 29836):
#0  0x00007f2264f61569 in pthread_cond_timedwait@@GLIBC_2.3.2 () from 
/lib/libpthread.so.0
#1  0x00007f226592932e in ?? () from /usr/lib/libmilter.so.1.0.1
#2  0x00007f2264f5c8ca in start_thread () from /lib/libpthread.so.0
#3  0x00007f2264cc3b6d in clone () from /lib/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 4 (Thread 21485):
#0  0x00007f2264f61569 in pthread_cond_timedwait@@GLIBC_2.3.2 () from 
/lib/libpthread.so.0
#1  0x00007f226592932e in ?? () from /usr/lib/libmilter.so.1.0.1
#2  0x00007f2264f5c8ca in start_thread () from /lib/libpthread.so.0
#3  0x00007f2264cc3b6d in clone () from /lib/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 3 (Thread 1683):
#0  0x00007f2264cb8c13 in poll () from /lib/libc.so.6
#1  0x00007f22659262e0 in mi_listener () from /usr/lib/libmilter.so.1.0.1
#2  0x00007f22659269b7 in smfi_main () from /usr/lib/libmilter.so.1.0.1
#3  0x0000000000403894 in main (argc=13, argv=0x7fffe7c834a8) at 
spamass-milter.cpp:357

Thread 2 (Thread 1685):
#0  0x00007f2264f64d37 in do_sigwait () from /lib/libpthread.so.0
#1  0x00007f2264f64db7 in sigwait () from /lib/libpthread.so.0
#2  0x00007f2265927142 in ?? () from /usr/lib/libmilter.so.1.0.1
#3  0x00007f2264f5c8ca in start_thread () from /lib/libpthread.so.0
#4  0x00007f2264cc3b6d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 1686):
#0  0x00007f2265929760 in ?? () from /usr/lib/libmilter.so.1.0.1
#1  0x00007f2264f5c8ca in start_thread () from /lib/libpthread.so.0
#2  0x00007f2264cc3b6d in clone () from /lib/libc.so.6
#3  0x0000000000000000 in ?? ()
(gdb) bt
#0  0x00007f2265929760 in ?? () from /usr/lib/libmilter.so.1.0.1
#1  0x00007f2264f5c8ca in start_thread () from /lib/libpthread.so.0
#2  0x00007f2264cc3b6d in clone () from /lib/libc.so.6
#3  0x0000000000000000 in ?? ()
(gdb) q
root@eroski:/var/cores# 


-- System Information:
Debian Release: 6.0.7
  APT prefers oldstable
  APT policy: (500, 'oldstable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-5-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages spamass-milter depends on:
ii  adduser                       3.112+nmu2 add and remove users and groups
ii  libc6                         2.11.3-4   Embedded GNU C Library: Shared lib
ii  libgcc1                       1:4.4.5-8  GCC support library
ii  libmilter1.0.1                8.14.3-9.4 Sendmail Mail Filter API (Milter)
ii  libstdc++6                    4.4.5-8    The GNU Standard C++ Library v3
ii  spamc                         3.3.1-1    Client for SpamAssassin spam filte

Versions of packages spamass-milter recommends:
ii  sendmail                      8.14.3-9.4 powerful, efficient, and scalable 
ii  spamassassin                  3.3.1-1    Perl-based spam filter using text 

spamass-milter suggests no packages.

-- Configuration Files:
/etc/default/spamass-milter changed (removed network info for security reasons):
OPTIONS="-u spamass-milter -i 
127.0.0.1,81.14.???.???/27,10.0.0.0/24,81.14.???.???/29,81.14.???.???/28 -I -r 
15"

/etc/init.d/spamass-milter changed (to get the core file):
PATH=/sbin:/bin:/usr/sbin:/usr/bin
NAME=spamass-milter
DAEMON=/usr/sbin/spamass-milter
SOCKET=/var/run/spamass/spamass.sock
PIDFILE=/var/run/spamass/spamass.pid
DESC="Sendmail milter plugin for SpamAssassin"
DEFAULT=/etc/default/spamass-milter
OPTIONS=""
RUNAS="spamass-milter"
CHUID=""
SOCKETMODE="0600"
SOCKETOWNER="root:root"
test -x $DAEMON || exit 0
if [ -e /etc/mail/sendmail.cf ] && egrep -q 
'X.+S=local:/var/run/sendmail/spamass\.sock' /etc/mail/sendmail.cf; then
    SOCKET=/var/run/sendmail/spamass.sock
    SOCKETMODE=""
    SOCKETOWNER=""
    RUNAS=""
    echo "WARNING: You are using the old location of spamass.sock. Change your 
input filter to use";
    echo "/var/run/spamass/spamass.sock so spamass-milter can run as 
spamass-milter";
fi;
if [ -x /usr/sbin/postfix ]; then
    SOCKET="/var/spool/postfix/spamass/spamass.sock"
    SOCKETOWNER="postfix:postfix"
    SOCKETMODE="0660"
fi;
if [ -r $DEFAULT ]; then
    . $DEFAULT;
fi;
if [ -n "$RUNAS" ]; then
    CHUID="--chuid $RUNAS";
fi;
set -e
start() {
    # Because the default socket is in the same location as the
    # pidfile, we create them in this order.
    for DIR in "$(dirname $PIDFILE)" "$(dirname $SOCKET)"; do 
    # if the dirname is '.', then it's some kind of odd socket, like
    # an inet socket. Don't create the directory in such a case
        if [ "$DIR" != "." ] && [ ! -d "$DIR" ]; then
            mkdir -p "$DIR";
            if [ -x /sbin/restorecon ]; then 
                /sbin/restorecon "$DIR";
            fi;
            if [ -n "$RUNAS" ]; then
                chown "$RUNAS" "$DIR";
            fi;
        fi;
    done;
    if [ -n "$RUNAS" ] && [ -d $(dirname $PIDFILE) ] &&
        [ "$(stat -c '%U' $(dirname $PIDFILE))" != "$RUNAS" ]; then
        echo "WARNING: $NAME will run as user $RUNAS but $(dirname $PIDFILE) is 
not owned by $RUNAS";
        echo "Either delete this directory or chown it appropriately. Startup 
attempts may fail.";
    fi;
    if [ -n "$RUNAS" ] && [ $(dirname $SOCKET) != "." ] &&
        [ -d $(dirname $SOCKET) ] &&
        [ "$(stat -c '%U' $(dirname $SOCKET))" != "$RUNAS" ]; then
        echo "WARNING: $NAME will run as user $RUNAS but $(dirname $SOCKET) is 
not owned by $RUNAS";
        echo "Either delete this directory or chown it appropriately. Startup 
attempts may fail.";
    fi;
    if [ $(dirname $SOCKET) != "." ]; then 
        /bin/rm -f $SOCKET
    fi;
    # moritz 20130523 ich will endlich ein core file von spamass-milter, wenn 
es immer abstürzt.
    ulimit -c unlimited
    start-stop-daemon --start -p $PIDFILE $CHUID --exec $DAEMON -- -P $PIDFILE 
-f -p $SOCKET $OPTIONS
    sleep 1s
    if [ -n "$SOCKETMODE" ]; then
        chmod $SOCKETMODE $SOCKET;
    fi;
    if [ -n "$SOCKETOWNER" ]; then
        chown $SOCKETOWNER $SOCKET;
    fi;
}
stop(){
    start-stop-daemon --oknodo --stop -p $PIDFILE --signal 3 --exec $DAEMON
    /bin/sleep 5s
    /bin/rm -f $SOCKET
    /bin/rm -f $PIDFILE
}
status(){
    if [ -e $PIDFILE ]; then 
        if kill -0 $(cat $PIDFILE); then
            echo "${NAME} running";
            exit 0;
        else
            echo "${NAME} dead but $PIDFILE exists";
            exit 1;
        fi;
        echo "${NAME} not running";
        exit 3;
    fi;
}
case "$1" in
  start)
        echo -n "Starting $DESC: "
        start
        echo "${NAME}"
        ;;
  stop)
        echo -n "Stopping $DESC: "
        stop
        echo "${NAME}"
        ;;
  force-reload | restart)
        echo -n "Restarting $DESC: "
        stop
        start
        echo "${NAME}"
        ;;
  status)
        status
        ;;
  *)
        N=$0
        echo "Usage: $N {start|stop|restart|force-reload|status}" >&2
        exit 1
        ;;
esac
exit 0


-- no debconf information


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to