#!/bin/sh
#
# chkconfig: - 91 35
# description: Starts and stops the Samba winbind daemon
#           #
# pidfile: /var/run/winbindd.pid
# config:  /etc/samba/smb.conf


# Source function library.
if [ -f /etc/init.d/functions ] ; then
  . /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
  . /etc/rc.d/init.d/functions
else
  exit 1
fi

# Avoid using root's TMPDIR
unset TMPDIR

# Source networking configuration.
. /etc/sysconfig/network

if [ -f /etc/sysconfig/samba ]; then
   . /etc/sysconfig/samba
fi

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 1

# Check that smb.conf exists.
[ -f /etc/samba/smb.conf ] || exit 4

RETVAL=0


start() {
        KIND="Winbind"
    echo -n $"Starting $KIND services: "
    daemon winbindd "$WINBINDOPTIONS"
    RETVAL=$?
    echo
    [ $RETVAL -eq 0 ] && touch /var/lock/subsys/winbindd || RETVAL=1
    return $RETVAL
}    

stop() {
        echo
    KIND="Winbind"
    echo -n $"Shutting down $KIND services: "
    killproc winbindd
    RETVAL=$?
    [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/winbindd
    echo ""
    return $RETVAL
}    

restart() {
    stop
    start
}    

reload() {
        echo -n $"Reloading smb.conf file: "
    killproc winbindd -HUP
    RETVAL=$?
    echo
    return $RETVAL
}    

rhstatus() {
    status winbindd
    return $?
}    

case "$1" in
  start)
      start
    ;;
  stop)
      stop
    ;;
  restart)
      restart
    ;;
  reload)
      reload
    ;;
  status)
      rhstatus
    ;;
  condrestart)
      [ -f /var/lock/subsys/winbindd ] && restart || :
    ;;
  *)
    echo $"Usage: $0 {start|stop|restart|reload|status|condrestart}"
    exit 2
esac

exit $?