#!/bin/sh
#
# /etc/rc.d/wsdd: start/stop wsdd daemon
#

SSD=/sbin/start-stop-daemon
PROG=/usr/sbin/wsdd
PID=/run/wsdd/pid
RUN_AS_USER=nobody:nobody
LOG_FILE=/var/log/wsdd.log
OPTS="-w WORKGROUP"

case $1 in
	start)
		[ ! -r $LOG_FILE ] && touch wsdd.log
		chown $RUN_AS_USER $LOG_FILE
		$SSD --start --background --user $RUN_AS_USER --make-pidfile --pidfile $PID --stdout $LOG_FILE --stderr $LOG_FILE --exec $PROG -- $OPTS
		;;
	stop)
		$SSD --stop --retry 10 --remove-pidfile --pidfile $PID
		;;
	restart)
		$0 stop
		$0 start
		;;
	status)
		$SSD --status --pidfile $PID
		case $? in
		0) echo "$PROG is running with pid $(cat $PID)" ;;
		1) echo "$PROG is not running but the pid file $PID exists" ;;
		3) echo "$PROG is not running" ;;
		4) echo "Unable to determine the program status" ;;
		esac
		;;
	*)
		echo "Usage: $0 [start|stop|restart|status]"
		;;
esac

# End of file
