#!/bin/bash # source application-specific settings [ -f /etc/conf.d/spamd ] && . /etc/conf.d/spamd . /etc/rc.conf . /etc/rc.d/functions PIDFILE=/var/run/spamd.pid if [ -f $PIDFILE ]; then PID=$(cat $PIDFILE) else PID=$(pidof -o %PPID /usr/bin/vendor_perl/spamd) #backward compat fi case "$1" in start) stat_busy "Starting spamd" [ -z "$PID" ] && /usr/bin/vendor_perl/spamd -d -r "$PIDFILE" ${SPAMD_OPTS} if [ $? -gt 0 ]; then stat_fail else add_daemon spamd stat_done fi ;; stop) stat_busy "Stopping spamd" [ ! -z "$PID" ] && kill $PID &> /dev/null if [ $? -gt 0 ]; then # Some users report that a second attempt at stopping the process # works. So, take a little nap and give it another whirl... sleep 2 kill $PID &> /dev/null if [ $? -gt 0 ]; then stat_fail else rm_daemon spamd stat_done fi else rm_daemon spamd stat_done fi ;; restart) $0 stop sleep 3 $0 start ;; *) echo "usage: $0 {start|stop|restart}" esac exit 0 # vim: ts=2 sw=2 et ft=sh