#!/bin/sh -e

### BEGIN INIT INFO
# Provides:          ekeyd
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Should-Start:      udev
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Entropy Key Manager
### END INIT INFO

PATH="/sbin:/bin:/usr/sbin:/usr/bin"
DAEMON=/usr/sbin/ekeyd

[ -x "$DAEMON" ] || exit 0

. /lib/lsb/init-functions

START_EKEYD=NO

test -f /etc/default/ekeyd && . /etc/default/ekeyd

if [ ! -s /etc/entropykey/ekeyd.conf ]; then
    log_failure_msg "Could not find /etc/entropykey/entropykey.conf (aborting)"
    exit 1
fi

case "$1" in
    start)
	if [ "x$START_EKEYD" != "xYES" ]; then
	    log_daemon_msg "Simtec Entropy Key Daemon is disabled"
	    log_end_msg 0
	    exit 0
	fi
	log_daemon_msg "Starting Simtec Entropy Key Daemon" "ekeyd"
	start-stop-daemon --start --exec $DAEMON || true
	log_end_msg 0
	;;
    restart|force-reload)
	$0 stop
	$0 start
	;;
    stop)
	log_daemon_msg "Stopping Simtec Entropy Key Daemon" "ekeyd"
	start-stop-daemon --stop --pidfile /var/run/ekeyd.pid --exec $DAEMON --oknodo --quiet || true
	log_end_msg 0
	;;
    status)
	status_of_proc $DAEMON ekeyd
	;;
    *)
	echo "Usage: /etc/init.d/ekeyd {start|stop}"
	exit 2
	;;
	
esac

exit 0
