summaryrefslogtreecommitdiff
path: root/packages/wlan-ng/files/post-down
blob: bf4ba0ae6067e3675c8198534bc0fbf083a31e49 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/sh
#
# This script takes care of bringing down wlan-ng devices.
# It is run by ifdown.

WLANCTL=/sbin/wlanctl-ng

if [ ! -x $WLANCTL ] ; then 
	exit 0
fi

case $IFACE in
wlan?)
	# Reset device to make sure it is not trying to generate
	# interrupts.
	result=`$WLANCTL $IFACE lnxreq_ifstate ifstate=disable`

	# Remove modules. Of course, for all I know they are still in use
	# by another interface, in which case these rmmods will fail. Also,
	# depending on how modutils is set up, different prism2 modules
	# might be loaded.
	(
		rmmod prism2_pci || rmmod prism2_cs || rmmod prism2_usb || \
			rmmod prism2_plx || true
		rmmod p80211 || true
	) 2>/dev/null
	
	# Remove lock file, just in case.
	rm -f /var/lock/wlan-$IFACE.lock
;;
esac