updated on Sat Jan 21 12:00:39 UTC 2012
[aur-mirror.git] / wpa_auto / wpa_auto
blob515caefb863078f104652c689d315fe62382f56d
1 #!/bin/bash
3 . /etc/rc.conf
4 . /etc/rc.d/functions
5 . /etc/wpa_auto.conf
7 DAEMON_NAME=wpa_auto
8 WPA_SUPPLICANT=/usr/sbin/wpa_supplicant
9 WPA_CLI=/usr/sbin/wpa_cli
10 IFCONFIG=/sbin/ifconfig
11 IP=/usr/sbin/ip
12 DHCPCD=/sbin/dhcpcd
13 ACTION_SCRIPT=/usr/bin/wpa_auto_action
15 case "$1" in
16 start)
17 stat_busy "Starting $DAEMON_NAME daemon"
18 if [[ ! -f /run/daemons/$DAEMON_NAME ]]; then
19 $IP link set $INTERFACE up &&\
20 $WPA_SUPPLICANT -D$WPA_DRIVER -i$INTERFACE -c$WPA_CONFIG $WPA_OPTIONS -B &&\
21 $WPA_CLI -i$INTERFACE -a$ACTION_SCRIPT $WPA_CLI_OPTIONS -B
22 if [[ $? -gt 0 ]]; then
23 stat_fail
24 exit 1
25 else
26 add_daemon $DAEMON_NAME
27 stat_done
29 else
30 stat_fail
31 exit 1
34 stop)
35 stat_busy "Stopping $DAEMON_NAME daemon"
36 if [[ -f /run/daemons/$DAEMON_NAME ]]; then
37 rm_daemon $DAEMON_NAME
38 $DHCPCD -qx $INTERFACE &>/dev/null
39 $WPA_CLI -i$INTERFACE terminate &>/dev/null &&\
40 $IP link set $INTERFACE down
41 if [[ $? -gt 0 ]]; then
42 stat_fail
43 exit 1
44 else
45 stat_done
47 else
48 stat_fail
49 exit 1
52 restart)
53 $0 stop
54 sleep 1
55 $0 start
57 reset)
58 stat_busy "Reseting $DAEMON_NAME daemon"
59 if [[ -f /run/daemons/$DAEMON_NAME ]]; then
60 $WPA_CLI -i$INTERFACE reassociate &>/dev/null
61 if [[ $? -gt 0 ]]; then
62 stat_fail
63 exit 1
64 else
65 stat_done
67 else
68 stat_fail
69 exit 1
73 echo "usage: $0 {start|stop|restart|reset}"
75 esac
77 exit 0