35 lines
846 B
Bash
35 lines
846 B
Bash
#!/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
|