#!/bin/sh
#
# saslauthd	Start/Stop the saslauthd server
#
# chkconfig: 345 53 10
# description: saslauthd - an SASL authentification daemon
#
# config: /usr/lib/sasl2/saslauthd.conf
# pidfile: /var/run/saslauthd/saslauthd.pid

### BEGIN INIT INFO
# Provides:          saslauthd
# Required-Start:    $network
# Required-Stop:     $network
# Default-Start:
# Default-Stop:
# Short-Description: start and stop SASL authentification daemon
# Description:       SASL authentification daemon
### END INIT INFO

# Source function library.
. /etc/rc.d/init.d/functions

WITHOUT_RC_COMPAT=1

SASLAUTHD=/usr/sbin/saslauthd
LOCKFILE=/var/lock/subsys/saslauthd
CONFIG=/etc/sasl2/saslauthd.conf
PIDFILE=/var/run/saslauthd/saslauthd.pid
. /etc/sysconfig/saslauthd

[ -f $SASLAUTHD ] || exit 0
[ -f $SASLAUTHD ] || exit 0

SourceIfNotEmpty /etc/sysconfig/network


RETVAL=0

start()
{
        [ -d "/var/run/saslauthd" ] || {
            mkdir "/var/run/saslauthd"
            chown root:root "/var/run/saslauthd"
            chmod 711 "/var/run/saslauthd"
        }

        #echo -n "Starting SASLauthd server: "
        start_daemon --lockfile "$LOCKFILE" --pidfile "$PIDFILE" --expect-user root -- $SASLAUTHD $OPTIONS
        RETVAL=$?
        #echo
        #[ $RETVAL -eq 0 ] && touch "$LOCKFILE"
        return $RETVAL
}



stop()
{
    #echo -n "Stopping SASLauthd server: "
    #killproc $SASLAUTHD
    stop_daemon --lockfile "$LOCKFILE" --pidfile "$PIDFILE" --expect-user root -- $SASLAUTHD
    RETVAL=$?
    #echo
    #[ $RETVAL -eq 0 ] && rm -f "$LOCKFILE"
    return $RETVAL
}

restart()
{
        stop
        start
}
		
reload()
{
        #echo -n "Reloading SASLauthd server configuration: "
        #killproc $SASLAUTHD -HUP
        stop_daemon --pidfile "$PIDFILE" --expect-user root -HUP $SASLAUTHD
	RETVAL=$?
        #echo
        return $RETVAL
}



# See how we were called.
case "$1" in
        start)
                start
                ;;
        stop)
                stop
                ;;
        reload)
                reload
                ;;
        restart)
                restart
                ;;
        condstop)
                if [ -e "$LOCKFILE" ]; then
                stop
                fi
                ;;
        condrestart)
                if [ -e "$LOCKFILE" ]; then
                restart
                fi
                ;;
        status)
                status --pidfile "$PIDFILE" --expect-user root $SASLAUTHD
                RETVAL=$?
                ;;
        *)
	        msg_usage "${0##*/} {start|stop|restart|reload|condstop|condrestart|status}"
	        RETVAL=1
esac
								
exit $RETVAL

