#!/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