#!/bin/sh # # WiFi Up/Down control script for elwix :) # # $Id: wifi_up.sh,v 1.1.1.1 2011/07/05 23:43:00 misho Exp $ DOWNSEC=5 UPSEC=30 CHKTIMEOUT=15 PROG="wifi_up" rup() { while [ `ifconfig $1 | awk '($1 == "status:") { printf("%s", $2); }'` = no ]; do logger -t $PROG "`date '+[ %Y-%m-%d %H:%M:%S ]'` Lost connection will be down $1 " \ "for $DOWNSEC seconds" ifconfig $1 down [ -x /etc/sysctl.$1 ] && /etc/sysctl.$1 sleep $DOWNSEC logger -t $PROG "`date '+[ %Y-%m-%d %H:%M:%S ]'` Up $1 and try to reconnect for " \ "$UPSEC seconds timeout" ifconfig $1 up [ -x /etc/sysctl.$1 ] && /etc/sysctl.$1 sleep $UPSEC done } # Main ... if [ -z $1 ]; then echo "Syntax: $0 " echo exit 1 fi echo ">>> elwix - WiFi interface $1 state logger" while : ; do rup $1 sleep $CHKTIMEOUT done