summaryrefslogtreecommitdiffstats
path: root/lxde/build/lxnm_scripts/wificonnect.sh
diff options
context:
space:
mode:
Diffstat (limited to 'lxde/build/lxnm_scripts/wificonnect.sh')
-rw-r--r--lxde/build/lxnm_scripts/wificonnect.sh58
1 files changed, 58 insertions, 0 deletions
diff --git a/lxde/build/lxnm_scripts/wificonnect.sh b/lxde/build/lxnm_scripts/wificonnect.sh
new file mode 100644
index 00000000..9ebf28f3
--- /dev/null
+++ b/lxde/build/lxnm_scripts/wificonnect.sh
@@ -0,0 +1,58 @@
+#!/bin/sh
+# <ifname> <essid> <en_type> <password> <bssid>
+
+if [ A"$LXNM_WIFI_PROTO" = A"NONE" ]; then
+ if [ -f /etc/dhcpc/dhcpcd-$LXNM_IFNAME.pid ]; then
+ kill $(cat /etc/dhcpc/dhcpcd-$LXNM_IFNAME.pid)
+ rm /etc/dhcpc/dhcpcd-$LXNM_IFNAME.pid
+ fi
+
+ # without encryption
+ ifconfig $LXNM_IFNAME up
+ if [ A"$LXNM_WIFI_ESSID" = A ]; then
+ iwconfig $LXNM_IFNAME essid "$LXNM_WIFI_ESSID" key off
+ else
+ iwconfig $LXNM_IFNAME ap "$LXNM_WIFI_APADDR" key off
+ fi
+
+ dhcpcd -d $LXNM_IFNAME
+elif [ A"$LXNM_WIFI_PROTO" = A"WEP" ]; then
+ if [ -f /etc/dhcpc/dhcpcd-$LXNM_IFNAME.pid ]; then
+ kill $(cat /etc/dhcpc/dhcpcd-$LXNM_IFNAME.pid)
+ rm /etc/dhcpc/dhcpcd-$LXNM_IFNAME.pid
+ fi
+
+ # WEP
+ ifconfig $LXNM_IFNAME up
+ if [ ! A"$LXNM_WIFI_ESSID" = A ]; then
+ if [ $(echo "$LXNM_WIFI_KEY" | wc -c) = 6 ] || [ $(echo "$LXNM_WIFI_KEY" | wc -c) = 14 ]; then
+ iwconfig $LXNM_IFNAME essid "$LXNM_WIFI_ESSID" key "s:$LXNM_WIFI_KEY"
+ else
+ iwconfig $LXNM_IFNAME essid "$LXNM_WIFI_ESSID" key "$LXNM_WIFI_KEY"
+ fi
+ fi
+
+ dhcpcd -d $LXNM_IFNAME
+else
+ if [ -f /etc/dhcpc/dhcpcd-$LXNM_IFNAME.pid ]; then
+ kill $(cat /etc/dhcpc/dhcpcd-$LXNM_IFNAME.pid)
+ rm /etc/dhcpc/dhcpcd-$LXNM_IFNAME.pid
+ fi
+
+ # start trying to associate with the WPA network using SSID test.
+ wpa_supplicant -g/var/run/wpa_supplicant-global -B
+
+ wpa_cli -g/var/run/wpa_supplicant-global interface_remove $LXNM_IFNAME
+ wpa_cli -g/var/run/wpa_supplicant-global interface_add $LXNM_IFNAME "" wext /var/run/wpa_supplicant
+
+ wpa_cli -i$LXNM_IFNAME add_network
+ wpa_cli -i$LXNM_IFNAME set_network 0 ssid "$LXNM_WIFI_ESSID"
+ wpa_cli -i$LXNM_IFNAME set_network 0 key_mgmt "$LXNM_WIFI_KEYMGMT"
+ wpa_cli -i$LXNM_IFNAME set_network 0 psk "$LXNM_WIFI_KEY"
+ wpa_cli -i$LXNM_IFNAME set_network 0 pairwise "$LXNM_WIFI_PAIRWISE"
+ wpa_cli -i$LXNM_IFNAME set_network 0 group "$LXNM_WIFI_GROUP"
+ wpa_cli -i$LXNM_IFNAME set_network 0 proto "$LXNM_WIFI_PROTO"
+ wpa_cli -i$LXNM_IFNAME enable_network 0
+
+ dhcpcd -d $LXNM_IFNAME
+fi