#!/bin/sh
#
# alarmwatch	watches for lm_sensors alarms
#
# chkconfig:    2345  32 68
#
# description:	watches lm_sensors and beeps on aparms
#
# $Id: alarmwatch.init,v 1.1 2002/05/15 19:05:26 qboosh Exp $

# Source function library
. /etc/rc.d/init.d/functions

# Set defaults
CHIPS=""
PIDFILE=/var/run/alarmwatch.pid
SENSORS_SETUP=no
ALARMOPTIONS=""

# Get service config - may override defaults
[ -f /etc/sysconfig/alarmwatch ] && . /etc/sysconfig/alarmwatch

# See how we were called.
case "$1" in
  start)
	# Check if the service is already running?
	if [ ! -f /var/lock/subsys/alarmwatch ]; then
		if [ -z "$CHIPS" ]; then
		    echo "alarmwatch not configured (CHIPS not set), cannot start."
		    exit 1
		fi
		if [ "$SENSORS_SETUP" = "yes" ]; then
		    # setup sensors limits, etc.
		    sensors -s
		fi
		# read from sensors to clear out any alarms caused by previous limits...
		sensors > /dev/null
				
		# show "Starting %s service" <service>
		msg_starting alarmwatch
		daemon alarmwatch -p "$PIDFILE" $CHIPS $ALARMOPTIONS
		RETVAL=$?
		[ $RETVAL -eq 0 ] && touch /var/lock/subsys/alarmwatch
	else
		# show "%s service is already running." <service>
		msg_already_running alarmwatch
		exit 1
	fi
        ;;
  stop)
        # Stop daemons.
        # show "Stopping %s service" <service>
	if [ -f /var/lock/subsys/alarmwatch ]; then
		msg_stopping alarmwatch
		killproc alarmwatch
		RETVAL=$?
		rm -f /var/lock/subsys/alarmwatch $PIDFILE
	else
		# show "%s service is not running." <service>
		msg_not_running alarmwatch
		exit 1
	fi	
        ;;
  restart|reload|force-reload)
        $0 stop
	$0 start
        ;;
  status)
	status alarmwatch
	RETVAL=$?
        ;;
  *)
        # show "Usage: %s {start|stop|status|restart|reload|force-reload}" $0
	msg_usage "$0 {start|stop|status|restart|reload|force-reload}"
        exit 1
esac

exit $RETVAL

# This must be last line !
# vi:syntax=sh:tw=78:ts=8:sw=4
