|
|
|
@ -6,7 +6,7 @@
|
|
|
|
|
|
|
|
|
|
. ./shared
|
|
|
|
|
|
|
|
|
|
# set -x
|
|
|
|
|
set -x
|
|
|
|
|
|
|
|
|
|
# Get device attributes
|
|
|
|
|
get_info $DEVICE
|
|
|
|
@ -19,22 +19,48 @@ ADDRESS="$SCHEME,$SOCKET,$INSTANCE,$HWADDR"
|
|
|
|
|
case "$ACTION" in
|
|
|
|
|
|
|
|
|
|
'start')
|
|
|
|
|
if ! is_true $WLAN_ENABLE ; then
|
|
|
|
|
exit 0
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if is_true $IS_AP; then
|
|
|
|
|
prism2dl -r $AP_FWIMAGE
|
|
|
|
|
wlanctl-ng $DEVICE start \
|
|
|
|
|
ssid="$CREATE_SSID" \
|
|
|
|
|
bsstype=infrastrucure \
|
|
|
|
|
beaconperiod=100 \
|
|
|
|
|
dtimperiod=3 \
|
|
|
|
|
cfpollable=false \
|
|
|
|
|
cfreq=false \
|
|
|
|
|
dschannel=$CREATE_CHANNEL \
|
|
|
|
|
basicrate1=2 \
|
|
|
|
|
basicrate2=4 \
|
|
|
|
|
operationalrate1=2 \
|
|
|
|
|
operationalrate2=4 \
|
|
|
|
|
operationalrate3=11 \
|
|
|
|
|
operationalrate4=22
|
|
|
|
|
if ! prism2dl -r $AP_FWIMAGE $DEVICE then ; then
|
|
|
|
|
echo AP firmware download failed
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
startcmd="wlanctl-ng $DEVICE dot11req_start "
|
|
|
|
|
startcmd="$startcmd ssid=$CREATE_SSID"
|
|
|
|
|
startcmd="$startcmd bsstype=infrastructure"
|
|
|
|
|
startcmd="$startcmd beaconperiod=$APBCNINT"
|
|
|
|
|
startcmd="$startcmd dtimperiod=$APDTIMINT"
|
|
|
|
|
startcmd="$startcmd cfpollable=$APCFPOLLABLE"
|
|
|
|
|
startcmd="$startcmd cfpollreq=$APCFPOLLREQ"
|
|
|
|
|
startcmd="$startcmd probedelay=$APPROBEDELAY"
|
|
|
|
|
startcmd="$startcmd dschannel=$CREATE_CHANNEL"
|
|
|
|
|
j=1
|
|
|
|
|
for i in $APBASICRATES ; do
|
|
|
|
|
startcmd="$startcmd basicrate$j=$i"
|
|
|
|
|
j=$[j + 1]
|
|
|
|
|
done
|
|
|
|
|
j=1
|
|
|
|
|
for i in $APOPRATES ; do
|
|
|
|
|
startcmd="$startcmd operationalrate$j=$i"
|
|
|
|
|
j=$[j + 1]
|
|
|
|
|
done
|
|
|
|
|
echo $startcmd
|
|
|
|
|
results=`$startcmd`
|
|
|
|
|
if [ $? = 0 ]; then
|
|
|
|
|
eval $results
|
|
|
|
|
if [ $resultcode != "success" ] ; then
|
|
|
|
|
echo "AP failed to start, resultcode=$resultcode"
|
|
|
|
|
exit 1
|
|
|
|
|
else
|
|
|
|
|
echo "WLAN AP mode started"
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
echo FAILED: $startcmd
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
|
|
|
|
|
/sbin/wlanctl-ng $DEVICE dot11req_mibset "mibattribute=dot11DesiredSSID=$DESIRED_SSID"
|
|
|
|
@ -44,12 +70,21 @@ case "$ACTION" in
|
|
|
|
|
# Now initialize the network interface in the normal way
|
|
|
|
|
./network $1 $2
|
|
|
|
|
|
|
|
|
|
if is_true $IS_AP ; then
|
|
|
|
|
ifconfig $BRIDGEDEVICE promisc
|
|
|
|
|
ifconfig $DEVICE up
|
|
|
|
|
brcfg start
|
|
|
|
|
fi
|
|
|
|
|
;;
|
|
|
|
|
|
|
|
|
|
'stop'|'check'|'cksum'|'restart'|'suspend'|'resume')
|
|
|
|
|
|
|
|
|
|
# Just handle it the same as any other net device
|
|
|
|
|
echo calling network script
|
|
|
|
|
if is_true $IS_AP ; then
|
|
|
|
|
brcfg stop
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
./network $1 $2
|
|
|
|
|
reval=$?
|
|
|
|
|
|
|
|
|
|