#
# processname: amavisd
# config: /etc/amavisd.conf
-# pidfile: /var/lock/subsys/amavisd
+# pidfile: /var/run/amavisd/amavisd.pid
# Source function library
# Get service config
[ -f /etc/sysconfig/amavisd ] && . /etc/sysconfig/amavisd
-
+RETVAL=0
# See how we were called.
case "$1" in
start)
# Check if the service is already running?
if [ ! -f /var/lock/subsys/amavisd ]; then
msg_starting Amavisd
- daemon $SERVICE_RUN_NICE_LEVEL /usr/sbin/amavisd
- touch /var/lock/subsys/amavisd
+ LC_ALL='' LANG='' LC_TYPE='' LC_CTYPE='' daemon $SERVICE_RUN_NICE_LEVEL /usr/sbin/amavisd -c /etc/amavisd.conf
+ RETVAL=$?
+ [ $RETVAL -eq 0 ] && touch /var/lock/subsys/amavisd
else
- msg_Already_Running Amavisd
- exit 1
+ msg_already_running Amavisd
fi
;;
stop)
# Stop daemons.
if [ -f /var/lock/subsys/amavisd ]; then
- msg_stopping Amavisd
- killproc amavisd;
+ msg_stopping Amavisd
+ killproc --pidfile amavisd/amavisd.pid amavisd
rm -f /var/lock/subsys/amavisd >/dev/null 2>&1
else
- msg_Not_Running Amavisd
- exit 1
+ msg_not_running Amavisd
fi
;;
status)
status amavisd
+ exit $?
;;
- reload)
- /usr/sbin/amavisd reload
+ reload|force-reload)
+ if [ -f /var/lock/subsys/amavisd ]; then
+ msg_reloading Amavisd
+ busy
+ LC_ALL='' LANG='' LC_TYPE='' LC_CTYPE='' /usr/sbin/amavisd reload
+ RETVAL=$?
+ ok
+ [ $RETVAL -ne 0 ] && RETVAL=7
+ else
+ msg_not_running Amavisd
+ RETVAL=7
+ fi
;;
- restart)
+ restart|force-restart)
$0 stop
$0 start
+ exit $?
;;
*)
- msg_usage "$0 {start|stop|status|reload|restart}"
- exit 1
+ msg_usage "$0 {start|stop|restart|force-restart|reload|force-reload|status}"
+ exit 3
esac
exit $RETVAL