#! /bin/sh -e
### BEGIN INIT INFO
# Provides:          powernap
# Required-Start:    $all
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      1
# Short-Description: execute action when processes absent for some time
### END INIT INFO
#
# Author:	Dustin Kirkland <kirkland@canonical.com>


PKG=powernap
DAEMON=/usr/sbin/"$PKG"d
PIDFILE=/var/run/$PKG.pid

test -x $DAEMON || exit 0

. /lib/lsb/init-functions

case "$1" in
	start)
		log_daemon_msg "Starting $PKG"
		# Enable Wake-on-LAN on valid interface(s)
		for i in $(/sbin/ifconfig | grep "encap:Ethernet" | awk '{print $1}'); do
			if /usr/sbin/ethtool $i | grep -qs "Supports Wake-on: g"; then
				/usr/sbin/ethtool -s $i wol g
			fi
                done
		start_daemon $DAEMON
		log_end_msg $?
	;;
	stop)
		log_daemon_msg "Stopping $PKG"
		killproc -p $PIDFILE $DAEMON
		log_end_msg $?
	;;
	force-reload|restart)
		$0 stop
		$0 start
	;;
	now)
		if [ -r $PIDFILE ]; then
			# Note: we do *not* want a log_*_msg here, as it forces
			echo "Sending $PKG the 'now' signal"
			kill -USR1 $(cat $PIDFILE)
			exit $?
		else
			log_failure_msg "$PKG is not running"
		fi
	;;
	status)
		status_of_proc -p $PIDFILE $DAEMON $PKG && exit 0 || exit $?
	;;
	*)
		log_warning_msg "Usage: /etc/init.d/$PKG {start|stop|restart|force-reload|now|status}"
		exit 1
	;;
esac

exit 0
