151 lines
3.6 KiB
Bash
151 lines
3.6 KiB
Bash
#!/bin/sh
|
|
export PATH=$PATH:/bin/vs/cgi-bin:/bin/vs
|
|
|
|
IFS=";"
|
|
|
|
. /bin/vs/cgi-bin/netenv.conf
|
|
. /bin/vs/cgi-bin/net_func.sh
|
|
|
|
####config_path=/etc/network
|
|
####wifi_config=$config_path/wifi.conf
|
|
####wifi_config_tmp=/tmpfs/wifi.conf
|
|
####wifidev_config=$config_path/wifidev.conf
|
|
|
|
. $wifi_config
|
|
|
|
|
|
if [ "$REQUEST_METHOD" = "GET" ]
|
|
then
|
|
CGIPARAM=$QUERY_STRING
|
|
elif [ "$REQUEST_METHOD" = "POST" ]
|
|
then
|
|
read CGIPARAM
|
|
else
|
|
CGIPARAM=$1
|
|
fi
|
|
|
|
|
|
CMD_LINE="`echo $CGIPARAM | sed -n "s/&/\n/gp"`"
|
|
get_param()
|
|
{
|
|
echo "${CMD_LINE}" | grep "${1}=" | sed -n "s/\-${1}=//p"
|
|
}
|
|
|
|
|
|
|
|
wifiessidold=$wifiessid
|
|
wifiwhichkeyold=$wifiwhichkey
|
|
|
|
ssid="`get_param "ssid"`"
|
|
wktype="`get_param "wktype"`"
|
|
wepid="`get_param "wepid"`"
|
|
enable="`get_param "enable"`"
|
|
|
|
|
|
|
|
wifiessid=$ssid
|
|
#wifistatus=$wfstatus
|
|
wifiwhichkey=$wepid
|
|
#wifimode=$wkmode
|
|
wifikeytype=$wktype
|
|
#wifiencryp=$wpatype
|
|
|
|
wifiwhichkey=0
|
|
|
|
#wifikey1old="$wifikey1"
|
|
#wifikey2old="$wifikey2"
|
|
#wifikey3old="$wifikey3"
|
|
wifikeyold="$wifikey"
|
|
|
|
#wifikey1="`get_param "wkd1"`"
|
|
#wifikey2="`get_param "wkd2"`"
|
|
#wifikey3="`get_param "wkd3"`"
|
|
wifikey="`get_param "key"`"
|
|
|
|
|
|
|
|
cat $wifidev_config > $wifi_config_tmp
|
|
echo "wifidev=\"${wifidev}\"" >> $wifi_config_tmp
|
|
echo "wifienable=\"${enable}\"" >> $wifi_config_tmp
|
|
#echo "channel=\"${channel}\"" >> $wifi_config_tmp
|
|
#echo "wifimode=\"${wifimode}\"" >> $wifi_config_tmp
|
|
echo "wifiessid=\"${wifiessid}\"" >> $wifi_config_tmp
|
|
#echo "wifirate=${wifirate}" >> $wifi_config_tmp
|
|
#echo "wifistatus=$wifistatus" >> $wifi_config_tmp
|
|
echo "wifikeytype=$wifikeytype" >> $wifi_config_tmp
|
|
echo "wifiwhichkey=$wifiwhichkey" >> $wifi_config_tmp
|
|
echo "wifikey=\"$wifikey\"" >> $wifi_config_tmp
|
|
#echo "wifikey2=\"$wifikey2\"" >> $wifi_config_tmp
|
|
#echo "wifikey3=\"$wifikey3\"" >> $wifi_config_tmp
|
|
#echo "wifikey4=\"$wifikey4\"" >> $wifi_config_tmp
|
|
#echo "wifiencryp=$wifiencryp" >> $wifi_config_tmp
|
|
|
|
cat $wifi_config_tmp > $wifi_config
|
|
#"$wifiessid=$1"
|
|
#"$wifikey=$2"
|
|
#"$wifikeytype=$3"
|
|
|
|
#无加密时key为空,导致传进去的参数会少一个
|
|
if [ $wifikey"A" == "A" ];then
|
|
wifikey="0"
|
|
fi
|
|
|
|
gen_wpa_config $wifiessid $wifikeytype $wifiwhichkey $wifikey $wpa_config_tmp
|
|
cp -f $wpa_config_tmp $wpa_config
|
|
#wifi_sta_save_info ${wifiessid} ${wifikey} ${wifikeytype}
|
|
|
|
#show_dbg2 "wpa_config_tmp:$wpa_config_tmp"
|
|
#gen_wpa_config $wifiessid $wifikeytype $wifiwhichkey $wifikey $wpa_config_tmp
|
|
#cp -f $wpa_config_tmp $wpa_config
|
|
|
|
|
|
#####wifim=$(wifi_getmode)
|
|
#####if [ $wifim = AP ]
|
|
#####then
|
|
##### ####BTTODO
|
|
##### ### echo "reboot" > /tmpfs/sysmon
|
|
##### ##echo "WIFI_STA" > /tmpfs/sysmon
|
|
##### ##fsync /tmpfs/sysmon
|
|
#####
|
|
##### wifi_networking.sh STA
|
|
#####else
|
|
##### wifi_networking.sh STA
|
|
#####fi
|
|
|
|
linedstatus=$(net_getlinedstatus)
|
|
show_info "setwifiattr, linestatus $linedstatus "
|
|
if [ $linedstatus = 0 -o $linedstatus = 2 ]
|
|
then
|
|
wifim=$(wifi_getmode)
|
|
if [ $wifim = "AP" ]
|
|
then
|
|
. $ap_cfgfile
|
|
if [ $ap_after_config = "STA" ]
|
|
then
|
|
show_info1 "wificonfig under AP. toSTA"
|
|
wifi_networking.sh STA
|
|
|
|
elif [ $ap_after_config = "REBOOT" ]
|
|
then
|
|
show_info1 "wificonfig under AP. reboot"
|
|
sys_setaction "reboot"
|
|
else
|
|
show_info1 "wificonfig under AP. do nothing"
|
|
fi
|
|
else
|
|
show_info "wificonfig under STA, connect with new config"
|
|
wifi_networking.sh STA
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo -e "\r\n"
|
|
#echo "<html><head><title></title><META http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"><META http-equiv=\"Refresh\" content=\"0;URL=$HTTP_REFERER\"></head><body></body></html>"
|
|
echo -e "[SUCCESS]SetWifiAttr OK"
|
|
|
|
|
|
# /bin/vs/cgi-bin/inetwifi_configig.cgi
|
|
|