File rc.amavis of Package amavisd-new
#! /bin/sh
# Copyright (c) 2003 SuSE Linux AG Nuernberg, Germany.
#
# Author: Carsten Hoeger <feedback@suse.de>, 2003
#
#
### BEGIN INIT INFO
# Provides: amavis
# Required-Start: $remote_fs
# Should-Start: $named clamd
# Should-Stop: $named clamd
# Required-Stop: $remote_fs
# Default-Start: 3 5
# Default-Stop:
# Description: Start amavisd-new
### END INIT INFO
AMAVISD_BIN=/usr/sbin/amavisd
AMAVIS_MILTER_BIN=/usr/sbin/amavis-milter
test -x $AMAVISD_BIN || exit 5
test -x $AMAVIS_MILTER_BIN || exit 5
test -s /etc/sysconfig/amavis && \
. /etc/sysconfig/amavis
# First reset status of this service
. /etc/rc.status
rc_reset
case "$1" in
start)
echo -n "Starting virus-scanner (amavisd-new):"
$AMAVISD_BIN start
if ! checkproc amavisd; then
rc_failed 7
fi
rc_status -v
if [ "$AMAVIS_SENDMAIL_MILTER" == "yes" ]; then
rc_reset
echo -n "Starting amavis-milter:"
startproc -u vscan $AMAVIS_MILTER_BIN -p local:/var/run/amavis/amavis-milter.sock > /dev/null 2>&1
rc_status -v
fi
;;
stop)
echo -n "Shutting down virus-scanner (amavisd-new):"
if checkproc amavisd; then
rc_reset
$AMAVISD_BIN stop
else
rc_reset
fi
rc_status -v
if [ "$AMAVIS_SENDMAIL_MILTER" == "yes" ]; then
rc_reset
echo -n "Shutting down amavis-milter:"
killproc -TERM $AMAVIS_MILTER_BIN
rc_status -v
fi
;;
try-restart)
$0 status >/dev/null && $0 restart
rc_status
;;
restart)
$0 stop
$0 start
rc_status
;;
force-reload)
echo -n "Reload virus-scanner (amavisd-new)"
$AMAVISD_BIN reload 2>/dev/null
rc_status -v
;;
reload)
echo -n "Reload virus-scanner (amavisd-new)"
$AMAVISD_BIN reload 2>/dev/null
rc_status -v
;;
status)
echo -n "Checking for service amavis (amavisd-new):"
checkproc -p /var/spool/amavis/amavisd.pid amavisd
rc_status -v
if [ "$AMAVIS_SENDMAIL_MILTER" == "yes" ]; then
rc_reset
echo -n "Checking for service amavis-milter:"
checkproc $AMAVIS_MILTER_BIN
rc_status -v
fi
;;
*)
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload}"
exit 1
esac
# Inform the caller not only verbosely and set an exit status.
rc_exit