#!/bin/bash
#
# kpropd.init  Start and stop the Kerberos 5 propagation client.
#
# chkconfig:   - 41 59
# description: Kerberos 5 is a trusted third-party authentication system.  \
#	       This script starts and stops the service that allows this \
#              KDC to receive updates from your master KDC.
# processname: kpropd
#

WITHOUT_RC_COMPAT=1

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

# Get config.
SourceIfNotEmpty /etc/sysconfig/network

LOCKFILE=/var/lock/subsys/kprop
KDC_PATH=/var/lib/kerberos/krb5kdc
RETVAL=0

# Sheel functions to cut down on useless shell instances.
start()
{
    is_yes "$NETWORKING" || return 0

    [ -f "$KDC_PATH/kpropd.acl" ] || return 0

    start_daemon --lockfile "$LOCKFILE" -- kpropd -S
    RETVAL=$?
    return $RETVAL
}

stop()
{
    stop_daemon --lockfile "$LOCKFILE" -- kpropd
    RETVAL=$?
    return $RETVAL
}

restart()
{
    stop
    start
}

reload()
{        
    msg_reloading kpropd
    stop_daemon --expect-user root -HUP -- kpropd
    RETVAL=$?
    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
            ;;
    condreload)
            if [ -e "$LOCKFILE" ]; then
                    reload
            fi
            ;;
    status)
            status --expect-user root -- kpropd
            RETVAL=$?
            ;;
    *)
            msg_usage "${0##*/} {start|stop|reload|restart|condstop|condrestart|condreload|status}"
            RETVAL=1
esac

exit $RETVAL
