| #!/bin/sh |
| # |
| # /etc/network/if-pre-up.d/zzz-wireless |
| # by Stefan Tomanek (stefan@pico.ruhr.de) |
| |
| |
| IWCONFIG=/sbin/iwconfig |
| IFCONFIG=/sbin/ifconfig |
| GREP=/bin/grep |
| LOGGER=/usr/bin/logger |
| SLEEP=/bin/sleep |
| |
| # How long do we wait for association? |
| RETRIES=15 |
| SLEEPTIME=1 |
| |
| # Only sleep if we use DHCP (add others methods seperated by spaces) |
| ONLY_FOR="static dhcp" |
| |
| if [ -z "$IF_WIRELESS_TYPE" ] && echo "$ONLY_FOR" | grep -q "$METHOD" ; then |
| $IFCONFIG $IFACE up |
| $LOGGER Checking for WLAN association... |
| while ( [ $RETRIES -gt 0 ] && ($IWCONFIG "$IFACE" | $GREP -q "Access Point: Not-Associated") ); do |
| $LOGGER No association yet, $RETRIES retries until timeout |
| RETRIES=$(($RETRIES-1)) |
| $SLEEP $SLEEPTIME |
| done |
| |
| if [ $RETRIES -eq 0 ]; then |
| $LOGGER Timeout waiting for association, continuing anyway... |
| else |
| $LOGGER Found association! |
| fi |
| fi |