#!/bin/sh . /www/cgi-bin/functions.sh lock_cgiwait #totalnum=$(ls /tmp/configs/static_router* | wc -l) totalnum=`nvram show | grep ^static_router | wc -l` info_get_wanproto=$($nvram get wan_proto) info_get_wanip="0.0.0.0" info_get_wanmask="0.0.0.0" wan_hwifname=$($nvram get wan_hwifname) if [ "$info_get_wanproto" = "dhcp" ];then info_get_wanip=$($nvram get wan_dhcp_ipaddr) info_get_wanmask=$($nvram get wan_dhcp_netmask) elif [ "$info_get_wanproto" = "static" ];then info_get_wanip=$($nvram get wan_ipaddr) info_get_wanmask=$($nvram get wan_netmask) elif [ "$info_get_wanproto" = "pptp" ];then pptp_status=/tmp/ppp/ppp0-status pptp_get_wan_assign=$($nvram get wan_pptp_wan_assign) pptp_alive=0 if [ -f $pptp_status ]; then status=$(cat $pptp_status) if [ "x$status" = "x1" ]; then pptp_alive=1 fi fi eth1_value=`ifconfig | grep ^$wan_hwifname` if [ "x$eth1_value" != "x" ];then pptp_eth1_wanip=`ifconfig $wan_hwifname | sed 2p -n | awk '/inet/{print $2}' | awk -F: '{print $2}'` pptp_eth1_wanmask=`ifconfig $wan_hwifname | sed 2p -n | awk '/inet/{print $4}' | awk -F: '{print $2}'` else pptp_eth1_wanip="0.0.0.0" pptp_eth1_wanmask="0.0.0.0" fi if [ "$pptp_alive" = "1" ];then ppp0_value=`ifconfig | grep ^ppp0` if [ "x$ppp0_value" != "x" ];then info_get_wanip=`ifconfig ppp0 | sed 2p -n | awk '/inet/{print $2}' | awk -F: '{print $2}'` info_get_wanmask="255.255.255.255" elif [ "$pptp_get_wan_assign" = "0" ];then info_get_wanip="0.0.0.0" info_get_wanmask="0.0.0.0" else info_get_wanip=$($nvram get wan_pptp_local_ip) info_get_wanmask="0.0.0.0" fi else info_get_wanip="0.0.0.0" info_get_wanmask="0.0.0.0" fi elif [ "$info_get_wanproto" = "bigpond" ];then info_get_wanip=$($nvram get wan_dhcp_ipaddr) info_get_wanmask=$($nvram get wan_dhcp_netmask) elif [ "$info_get_wanproto" = "pppoe" ];then pppoe_status=/tmp/ppp/ppp0-status pppoe_get_wan_assign=$($nvram get wan_pppoe_wan_assign) pppoe_alive=0 pppoe_netmask=$($nvram get wan_pppoe_netmask) if [ "$pppoe_netmask" != "0.0.0.0" ] && [ "$pppoe_netmask" != "..." ]; then dyn_pppoe=1 fi if [ -f $pppoe_status ]; then status=$(cat $pppoe_status) if [ "x$status" = "x1" ]; then pppoe_alive=1 fi fi if [ "$dyn_pppoe" = "1" ]; then eth1_value=`ifconfig | grep ^$wan_hwifname` if [ "x$eth1_value" != "x" ];then pppoe_eth1_wanip=`ifconfig $wan_hwifname | sed 2p -n | awk '/inet/{print $2}' | awk -F: '{print $2}'` pppoe_eth1_wanmask=`ifconfig $wan_hwifname | sed 2p -n | awk '/inet/{print $4}' | awk -F: '{print $2}'` fi fi if [ "$pppoe_alive" = "1" ];then ppp0_value=`ifconfig | grep ^ppp0` if [ "x$ppp0_value" != "x" ];then info_get_wanip=`ifconfig ppp0 | sed 2p -n | awk '/inet/{print $2}' | awk -F: '{print $2}'` info_get_wanmask="255.255.255.255" elif [ "$pppoe_get_wan_assign" = "0" ];then info_get_wanip="0.0.0.0" info_get_wanmask="0.0.0.0" else info_get_wanip=$($nvram get wan_pppoe_ip) info_get_wanmask="255.255.255.255" fi elif [ "$pppoe_get_wan_assign" = "1" ];then info_get_wanip=$($nvram get wan_pppoe_ip) info_get_wanmask="255.255.255.255" else info_get_wanip="0.0.0.0" info_get_wanmask="0.0.0.0" fi fi info_get_lanip=$($nvram get lan_ipaddr) info_get_lanmask=$($nvram get lan_netmask) print_cgi_header print_http_header "/funcs.js" "/str_router.js" print_noload_header "_STR_routes" "STR_router.html" "st_router_add" print_table_header "" echo "" cat < var wan_proto="$info_get_wanproto"; if ( wan_proto == "pptp" ) { var pptp_eth1_wanip="$pptp_eth1_wanip"; var pptp_eth1_wanmask="$pptp_eth1_wanmask"; } var dyn_pppoe="$dyn_pppoe"; if ( wan_proto == 'pppoe' && dyn_pppoe == 1) { var pppoe_eth1_wanip="$pppoe_eth1_wanip"; var pppoe_eth1_wanmask="$pppoe_eth1_wanmask"; } if ( "$info_get_wanip" == "") { var wan_ip="0.0.0.0"; var wan_mask="0.0.0.0" } else { var wan_ip="$info_get_wanip"; var wan_mask="$info_get_wanmask" } if( "$info_get_lanip" == "" ) { var lan_ip="0.0.0.0"; var lan_mask="0.0.0.0"; } else { var lan_ip="$info_get_lanip" var lan_mask="$info_get_lanmask" } . . . . . . . . . EOF print_http_footer