Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 1 | #!/bin/sh |
| 2 | # |
| 3 | # /etc/network/if-pre-up.d/zzz-wireless |
| 4 | # by Stefan Tomanek (stefan@pico.ruhr.de) |
| 5 | |
| 6 | |
| 7 | IWCONFIG=/sbin/iwconfig |
| 8 | IFCONFIG=/sbin/ifconfig |
| 9 | GREP=/bin/grep |
| 10 | LOGGER=/usr/bin/logger |
| 11 | SLEEP=/bin/sleep |
| 12 | |
| 13 | # How long do we wait for association? |
| 14 | RETRIES=15 |
| 15 | SLEEPTIME=1 |
| 16 | |
| 17 | # Only sleep if we use DHCP (add others methods seperated by spaces) |
| 18 | ONLY_FOR="static dhcp" |
| 19 | |
| 20 | if [ -z "$IF_WIRELESS_TYPE" ] && echo "$ONLY_FOR" | grep -q "$METHOD" ; then |
| 21 | $IFCONFIG $IFACE up |
| 22 | $LOGGER Checking for WLAN association... |
| 23 | while ( [ $RETRIES -gt 0 ] && ($IWCONFIG "$IFACE" | $GREP -q "Access Point: Not-Associated") ); do |
| 24 | $LOGGER No association yet, $RETRIES retries until timeout |
| 25 | RETRIES=$(($RETRIES-1)) |
| 26 | $SLEEP $SLEEPTIME |
| 27 | done |
| 28 | |
| 29 | if [ $RETRIES -eq 0 ]; then |
| 30 | $LOGGER Timeout waiting for association, continuing anyway... |
| 31 | else |
| 32 | $LOGGER Found association! |
| 33 | fi |
| 34 | fi |