97 lines
1.7 KiB
Bash
Executable File
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
|
|
|