envsys revision 1.1
11.1Sxtraeme#!/bin/sh 21.1Sxtraeme# 31.1Sxtraeme# $NetBSD: envsys,v 1.1 2007/07/01 08:01:29 xtraeme Exp $ 41.1Sxtraeme# 51.1Sxtraeme 61.1Sxtraeme# PROVIDE: envsys 71.1Sxtraeme# REQUIRE: LOGIN DAEMON 81.1Sxtraeme 91.1Sxtraeme$_rc_subr_loaded . /etc/rc.subr 101.1Sxtraeme 111.1Sxtraemename="envsys" 121.1Sxtraemercvar=${name} 131.1Sxtraemerequired_files="/etc/envsys.conf" 141.1Sxtraemestart_cmd="do_envsys start" 151.1Sxtraemestop_cmd="do_envsys stop" 161.1Sxtraemeenvsys_bin="/usr/sbin/envstat" 171.1Sxtraeme 181.1Sxtraemedo_envsys() 191.1Sxtraeme{ 201.1Sxtraeme IFS=":" 211.1Sxtraeme if [ "$1" = "start" ]; then 221.1Sxtraeme TARGET="Starting" 231.1Sxtraeme else 241.1Sxtraeme TARGET="Stopping" 251.1Sxtraeme fi 261.1Sxtraeme 271.1Sxtraeme while read -r device sensname target value; do 281.1Sxtraeme case "${device}" in 291.1Sxtraeme \#*|"") 301.1Sxtraeme continue 311.1Sxtraeme ;; 321.1Sxtraeme esac 331.1Sxtraeme 341.1Sxtraeme case "${value}" in 351.1Sxtraeme *degF) 361.1Sxtraeme add_arg="-f" 371.1Sxtraeme ;; 381.1Sxtraeme esac 391.1Sxtraeme 401.1Sxtraeme [ -z ${device} ] && err_msg="missing device" 411.1Sxtraeme [ -z ${target} ] && err_msg="missing target" 421.1Sxtraeme [ -z ${value} ] && err_msg="missing value" 431.1Sxtraeme 441.1Sxtraeme if [ -n "${err_msg}" ]; then 451.1Sxtraeme echo "${name}: invalid entry (${err_msg})." 461.1Sxtraeme return 1 471.1Sxtraeme fi 481.1Sxtraeme 491.1Sxtraeme if [ "$1" = "start" ]; then 501.1Sxtraeme ${envsys_bin} \ 511.1Sxtraeme ${add_arg} \ 521.1Sxtraeme -d ${device} \ 531.1Sxtraeme -s "${sensname}" \ 541.1Sxtraeme -m ${target}=${value%%degF} 551.1Sxtraeme else 561.1Sxtraeme ${envsys_bin} \ 571.1Sxtraeme ${add_arg} \ 581.1Sxtraeme -d ${device} \ 591.1Sxtraeme -s "${sensname}" \ 601.1Sxtraeme -m ${target}=remove 611.1Sxtraeme fi 621.1Sxtraeme 631.1Sxtraeme # reinitialize the var 641.1Sxtraeme add_arg= 651.1Sxtraeme done < ${required_files} 661.1Sxtraeme 671.1Sxtraeme echo "$TARGET sensors monitoring." 681.1Sxtraeme} 691.1Sxtraeme 701.1Sxtraemeload_rc_config ${name} 711.1Sxtraemerun_rc_command "$1" 72