mirror of
https://github.com/proski/madwifi
synced 2024-11-22 06:21:47 +03:00
8c73cc55b1
Linux 2.6.13 introduced Wireless Extension 18 with WPA support. It was released in August 2005. People making changes to MadWifi should not be required to be software archeologistists to test their changes.
53 lines
954 B
Bash
Executable File
53 lines
954 B
Bash
Executable File
#!/bin/sh
|
|
|
|
: ${PATTERN='\(ath_.*\|wlan_.*\|wlan\)$'}
|
|
: ${MAX_TRIES=10}
|
|
|
|
test "$(id -u)" = 0 || {
|
|
echo "ERROR: You must be root to run this script" >&2
|
|
exit 1
|
|
}
|
|
|
|
test -r /proc/modules || {
|
|
echo "ERROR: Cannot read /proc/modules" >&2
|
|
exit 1
|
|
}
|
|
|
|
tries="$MAX_TRIES"
|
|
while test "$tries" != "0"; do
|
|
skipped=0
|
|
IFS='
|
|
'
|
|
for line in $(cat /proc/modules); do
|
|
IFS=' '
|
|
set x $line
|
|
name="$2"
|
|
size="$3"
|
|
use_count="$4"
|
|
use_name="$5"
|
|
state="$6"
|
|
expr "$name" : "$PATTERN" >/dev/null || continue
|
|
|
|
if test "$state" != "Live" || test "$use_count" != "0" || \
|
|
test "$use_name" != "-"; then
|
|
# Don't skip unload in the last run
|
|
if test "$tries" != "1"; then
|
|
skipped=1
|
|
continue
|
|
fi
|
|
fi
|
|
|
|
echo "Unloading \"$name\""
|
|
sync # to be safe
|
|
/sbin/rmmod "$name" || {
|
|
echo "ERROR: cannot unload module \"$name\"" >&2
|
|
exit 1
|
|
}
|
|
sync # to be even safer
|
|
done
|
|
test "$skipped" = "0" && break
|
|
tries=$(($tries - 1))
|
|
done
|
|
|
|
exit 0
|