3ec0300
#!/bin/bash
e939bcc
#
e939bcc
# clamav-milter Starts/stop the "clamav-milter" daemon
e939bcc
#
Enrico Scholz 411e46e
# chkconfig:   - 79 31
e939bcc
# description: A virus scanning milter
e939bcc
e939bcc
# Source function library.
e939bcc
. /etc/rc.d/init.d/functions
e939bcc
e939bcc
exec=/usr/sbin/clamav-milter
e939bcc
prog="clamav-milter"
e939bcc
c382d9b
OPTS='-c /etc/mail/clamav-milter.conf'
e939bcc
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
e939bcc
e939bcc
pidfile=/var/run/clamav-milter/milter.pid
e939bcc
lockfile=/var/lock/subsys/$prog
e939bcc
e939bcc
start() {
e939bcc
    [ -x $exec ] || exit 5
e939bcc
    [ -f $config ] || exit 6
e939bcc
    echo -n $"Starting $prog: "
c382d9b
    daemon --pidfile=${pidfile} $exec $OPTS --nofork=no --pid=${pidfile}
e939bcc
    retval=$?
e939bcc
    echo
e939bcc
    [ $retval -eq 0 ] && touch $lockfile
e939bcc
    return $retval
e939bcc
}
e939bcc
e939bcc
stop() {
e939bcc
    echo -n $"Stopping $prog: "
c382d9b
    killproc -p "${pidfile}" $exec
e939bcc
    retval=$?
e939bcc
    echo
e939bcc
    [ $retval -eq 0 ] && rm -f $lockfile
e939bcc
    return $retval
e939bcc
}
e939bcc
e939bcc
restart() {
e939bcc
    stop
e939bcc
    start
e939bcc
}
e939bcc
e939bcc
reload() {
e939bcc
    restart
e939bcc
}
e939bcc
e939bcc
force_reload() {
e939bcc
    restart
e939bcc
}
e939bcc
e939bcc
rh_status() {
e939bcc
    # run checks to determine if the service is running or use generic status
c382d9b
    status -p "${pidfile}" $prog
e939bcc
}
e939bcc
e939bcc
rh_status_q() {
e939bcc
    rh_status >/dev/null 2>&1
e939bcc
}
e939bcc
e939bcc
e939bcc
case "$1" in
e939bcc
    start)
e939bcc
	rh_status_q && exit 0
e939bcc
	$1
e939bcc
	;;
e939bcc
    stop)
e939bcc
	rh_status_q || exit 0
e939bcc
	$1
e939bcc
	;;
e939bcc
    restart)
e939bcc
	$1
e939bcc
	;;
e939bcc
    reload)
e939bcc
	rh_status_q || exit 7
e939bcc
	$1
e939bcc
	;;
e939bcc
    force-reload)
e939bcc
	force_reload
e939bcc
	;;
e939bcc
    status)
e939bcc
	rh_status
e939bcc
	;;
e939bcc
    condrestart|try-restart)
e939bcc
	rh_status_q || exit 0
e939bcc
	restart
e939bcc
	;;
e939bcc
    *)
e939bcc
	echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
e939bcc
	exit 2
e939bcc
esac
e939bcc
exit $?