#!/bin/sh

### BEGIN INIT INFO
# Provides:          thttpd
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Small http server
# Description:       thttpd is a simple, small, portable, fast, and secure HTTP server.
### END INIT INFO


thttpd=/usr/sbin/thttpd
test -x "$thttpd" || exit 0


case "$1" in
  start)
    echo -n "Starting thttpd"
    start-stop-daemon --start --quiet --exec $thttpd -- -C @@CONFFILE
    echo "."
    ;;
  stop)
    echo -n "Stopping thttpd"
    start-stop-daemon --stop --quiet --exec $thttpd
    echo "."
    ;;
  reload|force-reload)
    start-stop-daemon --stop --quiet --signal 1 --exec $thttpd
    ;;
  restart)
    echo -n "Stopping thttpd"
    start-stop-daemon --stop --quiet --exec $thttpd -- -C @@CONFFILE
    echo "."
    echo -n "Waiting for thttpd to die off"
    for i in 1 2 3 ;
    do
        sleep 1
        echo -n "."
    done
    echo ""
    echo -n "Starting thttpd"
    start-stop-daemon --start --quiet --exec $thttpd -- -C @@CONFFILE
    echo "."
    ;;
  *)
    echo "Usage: /etc/init.d/thttpd {start|stop|reload|restart|force-reload}"
    exit 1
esac

exit 0
