#! /bin/sh -e
### BEGIN INIT INFO
# Provides:          uuidd
# Required-Start:    $time $local_fs
# Required-Stop:     $time $local_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: uuidd daemon
# Description:       Init script for the uuid generation daemon
### END INIT INFO
#
# Author:	"Theodore Ts'o" <tytso@mit.edu>
#
set -e

# libuuid is able to execute the uuid daemon on-demand -- in such a case
# the daemon binary must be setuid to an unprivileged user (e.g. uuidd:uuidd).
#                                                    [-- kzak Jun 2009]
UUIDD_ON_DEMAND_ONLY="no"

PATH=/bin:/usr/bin:/sbin:/usr/sbin
DAEMON=/usr/sbin/uuidd
UUIDD_USER=uuidd
UUIDD_GROUP=uuidd
UUIDD_DIR=/var/run/uuidd
PIDFILE=$UUIDD_DIR/uuidd.pid

test -x $DAEMON || exit 0

. /lib/lsb/init-functions

case "$1" in
  start)
	log_daemon_msg "Starting uuid generator" "uuidd"
	if ! test -d $UUIDD_DIR; then
		mkdir -p $UUIDD_DIR
		chown -R $UUIDD_USER:$UUIDD_GROUP $UUIDD_DIR
	fi
	if test "$UUIDD_ON_DEMAND_ONLY" = yes; then
		echo -n "(on demand only)"
	else
		start_daemon -p $PIDFILE $DAEMON
	fi
	log_end_msg $?
    ;;
  stop)
	log_daemon_msg "Stopping uuidd generator" "uuidd"
	killproc -p $PIDFILE $DAEMON
	log_end_msg $?
    ;;
  status)
	if pidofproc -p $PIDFILE $DAEMON >& /dev/null ; then
	    echo "$DAEMON is running";
	    exit 0;
	else
	    echo "$DAEMON is NOT running";
	    if test -f $PIDFILE; then exit 2; fi
	    exit 3;
	fi
    ;;
  force-reload|restart)
    $0 stop
    $0 start
    ;;
  *)
    echo "Usage: /etc/init.d/uuidd {start|stop|restart|force-reload}"
    exit 1
    ;;
esac

exit 0
