#!/bin/sh
# Client mode activator rev. 0.3
#    created by Technik 
#       April 2004
#
# Use: client SSID DHCPEN NATEN
#      SSID = AP name
#      DHCPEN ... 0 = DHCP disabled, 1 = DHCP enabled
#      NATEN  ... 0 = NAT disabled,  1 = NAT enabled
#  Manual IP address, mask and gateway are detached from the WAN port settings 
#
ARGNO=1
#brctl delif br0 eth2 
echo 1 > /proc/sys/net/ipv4/ip_forward 
wl ap 0
sleep 1
wl txant 3
sleep 1
wl antdiv 3
sleep 1
wl scan
if [ $# -lt "$ARGNO" ]
  then  AP="default"
  else AP=$1
fi
DHCPEN=$2
NATEN=$3
echo Connecting to $AP ...
VAR1=""
var0=0
LIMIT=30
 while [ "$var0" -lt "$LIMIT" ]
     do
      echo -n "$var0 "
      let "var0 += 1"
      if [ "${VAR1}" = '' ]
        then
          wl join $AP
          sleep 1
          wl assoc > /tmp/wlassoc
          sleep 1
          VAR1=`grep BSSID /tmp/wlassoc`
        else
          wl assoc
          let "var0 = $LIMIT"
      fi
 done

ifconfig eth1 down
route delete default
if [ "${DHCPEN}" != '1' ]
  then
    gwip=`nvram get wan_gateway`
    ipadr=`nvram get wan_ipaddr`
    wanmask=`nvram get wan_netmask`
    ifconfig eth2 $ipadr netmask $wanmask up
    route add default gw $gwip
  else udhcpc -i eth2 -s /bin/true
fi  

#echo nameserver 198.6.1.6 > /etc/resolv.conf

if [ "${NATEN}" = '1' ]
  then
    iptables -t nat -F
    iptables -t nat -P POSTROUTING DROP 
    iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE
    echo NAT enabled...
fi


