Public feed #527653

Someone

public text v1 · immutable
Raw Edit
·published 2007-06-01 11:48 UTC
rendered paste body
#!/bin/sh
#
# ipw3945d      This shell script takes care of starting and stopping
#               the IPW3945 regulatory daemon
#
# chkconfig: 345 9 91
# description: The IPW3945 regulatory daemon is required for use of the
#              ipw3945 wireless NIC driver.
#

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

prog="ipw3945d"

start() {
        # Load module and start daemon
        echo -n $"Starting $prog: "
        /sbin/modprobe ipw3945 2>/dev/null
        for ((count=0; count<20; count++)); do
                if [ ! -e /sys/bus/pci/drivers/ipw3945/*/cmd ]; then
                        sleep 0.5
                else
                        break
                fi
        done
        [ $count -eq 20 ] && return 1
        daemon /sbin/ipw3945d --quiet 2>/dev/null
        RETVAL=$?
        for ((count=0; count<20; count++)); do
                if [ ! -e /sys/bus/pci/drivers/ipw3945/*/net:* ]; then
                        sleep 0.5
                else
                        break
                fi
        done
        [ $count -eq 20 ] && return 1
        echo
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/ipw3945d
        return $RETVAL
}

stop() {
        # Stop service.
        echo -n $"Shutting down $prog: "
        killproc ipw3945d
        RETVAL=$?
        echo
        if [ $RETVAL -eq 0 ]; then
            rm -f /var/lock/subsys/ipw3945d
            /sbin/modprobe -r ipw3945 2>/dev/null
        fi
        return $RETVAL
}

[ -f /sbin/ipw3945d ] || exit 0

# See how we were called.
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  status)
        status ipw3945d
        RETVAL=$?
        ;;
  restart|reload)
        stop
        start
        RETVAL=$?
        ;;
  condrestart)
        if [ -f /var/lock/subsys/ipw3945d ]; then
            stop
            start
            RETVAL=$?
        fi
        ;;
  *)
        echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
        exit 1
esac

exit $RETVAL