linux-wlan-ng/etc/rc.wlan

97 lines
1.7 KiB
Bash
Executable File

#!/bin/sh
# rc.wlan
#
# chkconfig: 2345 9 91
# description: Activates/Configures/Disables the devices
if [ ! -f /etc/wlan/shared ] ; then
echo "/etc/wlan/shared not present"
exit 0
fi
. /etc/wlan/shared
if [ -f /etc/init.d/functions ] ; then
. /etc/init.d/functions
fi
usage()
{
echo "Usage: $0 {start|stop|status|restart|reload|force-reload}"
}
if [ $# -lt 1 ] ; then usage ; exit 1 ; fi
action=$1
case "$action" in
start)
# This will implicitly fire off wland via hotplug.
echo -n "Starting WLAN Devices: "
if ! $MODPROBE p80211; then
echo "Failed to load p80211.o."
exit 1
fi
# NOTE: We don't explicitly insmod the card driver here. The
# best thing to do is to specify an alias in /etc/modules.conf.
for DEVICE in $WLAN_DEVICES; do
$MODPROBE $DEVICE
# if we don't have hotplug.. do things the old-fashioned way.
if [ $HAS_HOTPLUG = 'n' ] ; then
wlan_bring_it_up $DEVICE
fi
done
# And hotplug will take care of the rest, namely device
# initialization and whatnot.
if [ -f /etc/init.d/functions ] ; then
echo_success
else
echo
fi
;;
stop)
echo -n "Shutting Down WLAN Devices: "
echo -n "Shutting Down WLAN Devices: "
# Do a reset on each device to make sure none of them are still
# trying to generate interrupts.
for DEVICE in $WLAN_DEVICES; do
wlan_disable $DEVICE
ifconfig $DEVICE down
$MODPROBE -r $DEVICE
done
# remove p80211, which will implictly kill wland.
$MODPROBE -r p80211
if [ -f /etc/init.d/functions ] ; then
echo_success
else
echo
fi
;;
status)
status wland
;;
restart|reload|force-reload)
$0 stop
$0 start
EXITCODE=$?
;;
*)
usage
;;
esac