]> git.pld-linux.org Git - projects/rc-scripts.git/blobdiff - sysconfig/network-scripts/ifup
Wait for wpa_supplicant to actually connect to network before trying dhcp.
[projects/rc-scripts.git] / sysconfig / network-scripts / ifup
index 8242e4d31f0e45841da5a28887e425a67a39c909..80c98c2954fc0f29b13b73cc7c937eb1093a0cce 100755 (executable)
@@ -123,7 +123,16 @@ if is_wireless_device "${DEVICE}"; then
 fi
 
 if is_yes "${WLAN_WPA}"; then
+       [ -z "$WLAN_WPA_WAIT_TIMEOUT" ] && WLAN_WPA_WAIT_TIMEOUT=15
        /usr/sbin/wpa_supplicant -D ${WLAN_WPA_DRIVER:-wext} -c ${WLAN_WPA_CONFIG:-/etc/wpa_supplicant.conf} -i ${DEVICE} ${WLAN_WPA_OPTIONS} -P "/var/run/wpa_supplicant-${DEVICE}.pid" -B
+       i=0
+       while [ "$i" -lt "$WLAN_WPA_WAIT_TIMEOUT" ]; do
+               i=$((i + 1))
+               # check_link_down sleeps for 0.5s
+               check_link_down ${DEVICE} 2
+               status=$?
+               [ "$status" = "1" ] && break
+       done
 fi
 
 if [ "$HANDLING" = "2" ]; then
This page took 0.03025 seconds and 4 git commands to generate.