Package: spampd
Version: 2.30-22
Severity: wishlist
Tags: patch

It would be great if a NICE variable could be added to spampd
similar to what was done for spamassassin in #224369 to lower
the priority of spampd processes.


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

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

Versions of packages spampd depends on:
ii  adduser                3.112+nmu2        add and remove users and groups
ii  dpkg                   1.15.8.13         Debian package management system
ii  libnet-server-perl     0.97-1            An extensible, general perl server
ii  lsb-base               3.2-23.2squeeze1  Linux Standard Base 3.2 init scrip
ii  perl                   5.10.1-17squeeze4 Larry Wall's Practical Extraction 
ii  spamassassin           3.3.2-2~bpo60+1   Perl-based spam filter using text 

spampd recommends no packages.

spampd suggests no packages.

-- Configuration Files:
/etc/default/spampd changed:
STARTSPAMPD=1
NICE="--nicelevel 15"
PIDFILE=/var/run/spampd.pid
LISTENHOST=127.0.0.1
LISTENPORT=10025
DESTHOST=127.0.0.1
DESTPORT=10026
CHILDREN=3
USERID=spampd
GRPID=spampd
TAGALL=1
AUTOWHITELIST=1
LOCALONLY=0
LOGINET=0
ADDOPTS="--maxsize=524288"

/etc/init.d/spampd changed:
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
DESC='spam checking proxy daemon'
NAME='spampd'
PROGRAM=/usr/sbin/spampd
EXECUTABLE=/usr/bin/perl
PIDFILE=/var/run/spampd.pid
. /lib/lsb/init-functions
USERID=spampd
GRPID=spampd
if [ "`id -u`" !=  "0" ]; then
        log_failure_msg "ERROR: Insufficient privileges. Retry as root"
        # LSB 3.0 says that return value of 4 indicates insufficient privileges
        exit 4
fi
if [ -f /etc/default/$NAME ]; then
        . /etc/default/$NAME
fi
        
istrue () {
    ANS=$(echo $1 | tr A-Z a-z)
    [ "$ANS" = 'yes' -o "$ANS" = 'true' -o "$ANS" = 'enable' -o "$ANS" = '1' ]
}
istrue ${STARTSPAMPD} && STARTSPAMPD='true'
[  -x $PROGRAM ] || exit 5
S_TAGALL=''
S_AWL=''
S_LOCALONLY=''
istrue "$TAGALL" \
&& S_TAGALL='--tagall'
istrue "$AUTOWHITELIST" \
&& S_AWL='--auto-whitelist'
istrue "$LOCALONLY" \
&& S_LOCALONLY='--L'
istrue "$LOGINET" \
&& LOGTARGET="inet" \
|| LOGTARGET="unix"
ARGS="${S_LOCALONLY} ${S_AWL} ${S_TAGALL} "
[ -n "${LISTENPORT}" ] && ARGS="${ARGS} --port=${LISTENPORT}"
[ -n "${LISTENHOST}" ] && ARGS="${ARGS} --host=${LISTENHOST}"
[ -n "${DESTPORT}" ] && ARGS="${ARGS} --relayport=${DESTPORT}"
[ -n "${DESTHOST}" ] && ARGS="${ARGS} --relayhost=${DESTHOST}"
[ -n "${PIDFILE}" ] && ARGS="${ARGS} --pid=${PIDFILE}"
[ -n "${CHILDREN}" ] && ARGS="${ARGS} --children=${CHILDREN}"
[ -n "${USERID}" ] && ARGS="${ARGS} --user=${USERID}"
[ -n "${GRPID}" ] && ARGS="${ARGS} --group=${GRPID}"
[ -n "${LOGTARGET}" ] && ARGS="${ARGS} --logsock=${LOGTARGET}"
[ -n "${ADDOPTS}" ] && ARGS="${ARGS} ${ADDOPTS}"
function check_pid () {
        # $1 : process name
        # $2 : pid file
        # $3 : (optional) verbosity
        VERBOSE=""
        [ "$3" = "verbose" ] && VERBOSE=1
        if [ -f $2 ]; then
                kill -0 `cat $2` > /dev/null 2>&1
                RETVAL=$?
                if [ "$RETVAL" = "0" ]; then
                        [ "$VERBOSE" ] && log_success_msg "$1 is running as 
`cat $2`"
                        return 0
                else
                        [ "$VERBOSE" ] && log_failure_msg "PIDFILE $2 for $1 
exists, but $1 is not running."
                        rm $2
                        return 1
                fi
        else
                [ "$VERBOSE" ] && log_failure_msg "PIDFILE $2 for $1 doesn't 
exist."
                return 4
        fi
        return 3
}
case "$1" in
        start)
                if ! istrue "${STARTSPAMPD}"; then
                        log_warning_msg "Starting $DESC: $NAME (disabled in 
/etc/default/$NAME)."
                        # LSB 2.1: 6 mean unconfigured. This seems appropriate 
here.
                        exit 6
                fi
                log_daemon_msg "Starting $DESC" "$NAME"
                # if spampd is already running, exit 0 as demanded by LSB 2.1
                # this also removes the PIDFILE if it exists but has no matching
                # process
                if check_pid $PROGRAM $PIDFILE ; then
                        log_end_msg 0
                        exit 0
                fi
                # if spampd is not installed, return 5 as demanded by LSB 2.1
                if [ ! -x $EXECUTABLE ]; then
                        log_error_msg "failed! - executable not found"
                        exit 5
                fi
                # start daemon
                start-stop-daemon --start --exec $EXECUTABLE \
                        --startas $PROGRAM --pidfile $PIDFILE \
                        $NICE --user $USERID --group $GRPID -- $ARGS
                if [ "$?" = '0' ]; then
                        log_end_msg 0
                        exit 0
                else
                        log_end_msg 7
                        # LSB 2.1 says 7 should be returned when program
                        # isn't running.
                        exit 7
                fi
                ;;
        stop)
                echo -n "Stopping $DESC: $NAME "
                set +e
                # if $PROGRAM is not running under PID given in
                # $PIDFILE, exit with 0 to be LSB compliant
                check_pid $PROGRAM $PIDFILE || exit 0
                if istrue "$STARTSPAMPD" ; then
                        start-stop-daemon --stop --exec $EXECUTABLE \
                                --pidfile $PIDFILE
                else
                        start-stop-daemon --stop --exec $EXECUTABLE \
                                --pidfile $PIDFILE > /dev/null 2>&1
                fi
                if [ "$?" = "0" ]; then
                        log_end_msg 0
                        rm $PIDFILE
                        exit 0
                else
                        if ! check_pid $PROGRAM $PIDFILE ; then
                                log_end_msg 0
                                exit 0
                        else
                                # if we had not successfully stopped the
                                # program, we can assume the user didn't
                                # have sufficient privileges.
                                log_end_msg 1
                                exit 4
                        fi
                fi
                ;;
        status)
                check_pid $PROGRAM $PIDFILE verbose
                exit $?
                ;;
        reload)
                log_warning_msg "reload not implemented, try 
force-reload/restart instead"
                exit 3
                ;;
        force-reload|try-restart)
                if check_pid $PROGRAM $PIDFILE ; then
                        exec $0 restart
                else
                        log_warning_msg "$DESC is not running. Try '$0 start' 
to start it."
                        # LSB 2.1 says that this should return success, anyhow.
                        exit 0
                fi
                ;;
        restart)
                if check_pid $PROGRAM $PIDFILE ; then
                        $0 stop
                fi
                exec $0 start
                ;;
        help)
                echo "Usage: $0 
(start|stop|restart|try-restart|force-reload|status)"
                exit 0
                ;;
        *)      echo "Usage: $0 
(start|stop|restart|try-restart|force-reload|status|help)"
                exit 2
                ;;
esac
log_error_msg "This point shouldn't be reached. Some weird thing happened"
exit 1

/etc/spampd.conf [Errno 13] Permission denied: u'/etc/spampd.conf'

-- 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