#! /bin/sh # # This is an init script created for a S.u.S.E. 6.2 distribution. # # Author: CW Zuckschwerdt # # /sbin/init.d/lircd # # and symbolic its link # # /sbin/rc?.d/K20lircd # /sbin/rc?.d/S20lircd # . /etc/rc.config # Determine the base and follow a runlevel link name. base=${0##*/} link=${base#*[SK][0-9][0-9]} # Force execution if not called by a runlevel directory. test $link = $base && START_LIRCD=yes # test "$START_LIRCD" = yes || exit 0 # The echo return value for success (defined in /etc/rc.config). return=$rc_done case "$1" in start) echo -n "Starting daemon lircd" ## Start daemon with startproc(8). If this fails ## the echo return value is set appropriate. startproc /usr/local/sbin/lircd || return=$rc_failed echo -e "$return" ;; stop) echo -n "Shutting down daemon lircd" ## Stop daemon with killproc(8) and if this fails ## set echo the echo return value. killproc -TERM /usr/local/sbin/lircd || return=$rc_failed echo -e "$return" ;; restart) ## If first returns OK call the second, if first or ## second command fails, set echo return value. $0 stop && $0 start || return=$rc_failed ;; reload) ## both lircd and lircmd will re-read their ## config files on receipt of SIGHUP echo -n "Reload daemon lircd" killproc -HUP /usr/local/sbin/lircd || return=$rc_failed echo -e "$return" ;; status) echo -n "Checking for daemon lircd: " ## Check status with checkproc(8), if process is running ## checkproc will return with exit status 0. checkproc /usr/local/sbin/lircd && echo OK || echo No process ;; *) echo "Usage: $0 {start|stop|status|restart|reload}" exit 1 ;; esac # Inform the caller not only verbosely and set an exit status. test "$return" = "$rc_done" || exit 1 exit 0