#!/bin/sh
# scan wireless network. user chooses and configures one. loop. -don

while (true)
do
key=''

echo -n "Press enter to change wireless network..."
read xx
echo "Scanning network. Pleas wait..."
echo
echo `iwlist eth0 scan | sed 's/^./,&/g` | sed 's: *, *:,:g'  | \
sed 's/,Cell 0*/\n/g' | grep -v Scan.completed | \
sed 's: Signal[^,]*,:,:g' | sed 's: - Address[^,]*,:,:g' | \
sed 's:Encryption ::g' | sed 's/Mode:Master,//g' | \
sed 's/,Extra:[^,]*//g' | \
( while ( true ) ;  \
do \
read l || break ; \
echo $l ; \
n=`echo $l | sed 's:,.*::g'`; \
echo "$l" > /tmp/iwscan-$n ; \
done )

echo -n "which node? "
read n
if [ "$n" = "q" ]; then n=1 ; fi
if [ "$n" = "w" ]; then n=2 ; fi
if [ "$n" = "e" ]; then n=3 ; fi
if [ "$n" = "r" ]; then n=4 ; fi
if [ "$n" = "t" ]; then n=5 ; fi
if [ "$n" = "y" ]; then n=6 ; fi
if [ "$n" = "u" ]; then n=7 ; fi
if [ "$n" = "i" ]; then n=8 ; fi
if [ "$n" = "o" ]; then n=9 ; fi
if [ "$n" = "p" ]; then n=0 ; fi
if [ ! -f "/tmp/iwscan-$n" ] ; then continue ; fi
l=`cat /tmp/iwscan-$n`
ESSID=`echo $l | sed 's/.*ESSID:"\([^"]*\)".*/\1/'`
export ESSID
/sbin/iwask "/etc/wireless/$ESSID"
/sbin/ifup "/etc/wireless/$ESSID"

done
