#! /bin/sh

### BEGIN INIT INFO
# Provides:          samba
# Required-Start:    $network $local_fs $remote_fs
# Required-Stop:     $network $local_fs $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: uruchomienie demona Samba
### END INIT INFO

#
# Uruchomienie/zatrzymanie demona Samba 4 (samba).
#

PIDDIR=/usr/local/samba/var/run
SAMBAPID=$PIDDIR/samba.pid

# Usunięcie ze środowiska ustawień, które mogą powodować konflikty.
unset TMPDIR

. /lib/lsb/init-functions

case "$1" in
        start)
                # Upewniamy się, że mamy PIDDIR, nawet jeśli w systemie tmpfs.
                install -o root -g root -m 755 -d $PIDDIR
                log_daemon_msg "Uruchomienie demona Samba AD DC" "samba"

                if ! start-stop-daemon --start --quiet --oknodo --exec /usr/local/samba/sbin/samba -- -D; then
                        log_end_msg 1
                        exit 1
                fi

                log_end_msg 0
                ;;
        stop)
                log_daemon_msg "Zatrzymanie demona Samba AD DC" "samba"

                start-stop-daemon --stop --quiet --pidfile $SAMBAPID
                # Odczekanie chwilę i usunięcie nieaktualnego pliku PID.
                sleep 1
                if [ -f $SAMBAPID ] && ! ps h `cat $SAMBAPID` > /dev/null
                then
                        # Nieaktualny plik PID (demon samba został zatrzymany), a więc usuwamy go...
                        rm -f $SAMBAPID
                fi

                log_end_msg 0

                ;;
        restart|force-reload)
                $0 stop
                sleep 1
                $0 start
                ;;
        status)
                status_of_proc -p $SAMBAPID /usr/local/samba/sbin/samba samba
                exit $?
                ;;
        *)
                echo "Użycie: /etc/init.d/samba {start|stop|restart|force-reload|status}"
                exit 1
                ;;
esac

exit 0
