#!/bin/bash # # /etc/rc.d/init.d/wdaemon # # Starts the wdaemon # # chkconfig: - 95 5 # description: helps X.org to support Wacom tablets hotplugging by creating \ # permanent uinput devices that may be feeded by real tablets events while \ # the hardware is present. # processname: wdaemon # Source function library. . /etc/init.d/functions test -x /usr/bin/wdaemon || exit 0 RETVAL=0 # # See how we were called. # prog="wdaemon" start() { # Check if there's already a configuration present if [ ! -f /etc/wdaemon.conf ]; then echo "wdaemon configuration file not present yet"; return 0; fi # Check if wdaemon is already running if [ ! -f /var/lock/subsys/wdaemon ]; then if [ -z "$(lsmod | grep uinput)" ]; then echo -n $"Loading uinput module: " modprobe uinput; RETVAL=$? [ $RETVAL -eq 0 ] && success || (failure; return $RETVAL); echo; for count in $(seq 1 3); do if [ -e /dev/uinput ]; then break; fi sleep 1; done if [ ! -e /dev/uinput ]; then logger -p daemon.err -t wdaemon "/dev/uinput not available"; failure; return 1; fi fi echo -n $"Starting $prog: " daemon /usr/bin/wdaemon -c /etc/wdaemon.conf -f >/dev/null; RETVAL=$? [ $RETVAL -eq 0 ] && (success; touch /var/lock/subsys/wdaemon) || failure; echo fi return $RETVAL } stop() { echo -n $"Stopping $prog: " killproc /usr/bin/wdaemon RETVAL=$? [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/wdaemon echo return $RETVAL } restart() { stop start } reload() { restart } status_at() { status /usr/bin/wdaemon } case "$1" in start) start ;; stop) stop ;; reload|restart) restart ;; condrestart) if [ -f /var/lock/subsys/wdaemon ]; then restart fi ;; status) status_at ;; *) echo $"Usage: $0 {start|stop|restart|condrestart|status}" exit 1 esac exit $? exit $RETVAL