3 .
/usr
/lib
/webif
/webif.sh
7 FORM_dns
="${wan_dns:-$(nvram get wan_dns)}"
9 handle_list
"$FORM_dnsremove" "$FORM_dnsadd" "$FORM_dnssubmit" 'ip|FORM_dnsadd|@TR<<DNS Address>>|required' && {
11 save_setting network wan_dns
"$FORM_dns"
13 FORM_dnsadd
=${FORM_dnsadd:-192.168.1.1}
15 if empty
"$FORM_submit"; then
16 FORM_wan_proto
=${wan_proto:-$(nvram get wan_proto)}
17 case "$FORM_wan_proto" in
19 static|dhcp|pptp|pppoe
) ;;
20 # otherwise select "none"
21 *) FORM_wan_proto
="none";;
24 # pptp, dhcp and static common
25 FORM_wan_ipaddr
=${wan_ipaddr:-$(nvram get wan_ipaddr)}
26 FORM_wan_netmask
=${wan_netmask:-$(nvram get wan_netmask)}
27 FORM_wan_gateway
=${wan_gateway:-$(nvram get wan_gateway)}
30 FORM_ppp_username
=${ppp_username:-$(nvram get ppp_username)}
31 FORM_ppp_passwd
=${ppp_passwd:-$(nvram get ppp_passwd)}
32 FORM_ppp_idletime
=${ppp_idletime:-$(nvram get ppp_idletime)}
33 FORM_ppp_redialperiod
=${ppp_redialperiod:-$(nvram get ppp_redialperiod)}
34 FORM_ppp_mtu
=${ppp_mtu:-$(nvram get ppp_mtu)}
36 redial
=${ppp_demand:-$(nvram get ppp_demand)}
38 1|enabled|on
) FORM_ppp_redial
="demand";;
39 *) FORM_ppp_redial
="persist";;
42 FORM_pptp_server_ip
=${pptp_server_ip:-$(nvram get pptp_server_ip)}
46 empty
"$FORM_wan_proto" && {
47 ERROR
="@TR<<No WAN Proto|No WAN protocol has been selected>>"
51 case "$FORM_wan_proto" in
62 ip|FORM_wan_ipaddr|@TR<<IP Address>>|$V_IP|$FORM_wan_ipaddr
63 netmask|FORM_wan_netmask|@TR<<Netmask>>|$V_NM|$FORM_wan_netmask
64 ip|FORM_wan_gateway|@TR<<Default Gateway>>||$FORM_wan_gateway
65 ip|FORM_pptp_server_ip|@TR<<PPTP Server IP>>|$V_PPTP|$FORM_pptp_server_ip
68 save_setting network wan_proto
$FORM_wan_proto
70 # Settings specific to one protocol type
71 case "$FORM_wan_proto" in
72 static
) save_setting network wan_gateway
$FORM_wan_gateway ;;
73 pptp
) save_setting network pptp_server_ip
"$FORM_pptp_server_ip" ;;
76 # Common settings for PPTP, Static and DHCP
77 case "$FORM_wan_proto" in
79 save_setting network wan_ipaddr
$FORM_wan_ipaddr
80 save_setting network wan_netmask
$FORM_wan_netmask
85 case "$FORM_wan_proto" in
87 empty
"$FORM_ppp_username" || save_setting network ppp_username
$FORM_ppp_username
88 empty
"$FORM_ppp_passwd" || save_setting network ppp_passwd
$FORM_ppp_passwd
91 save_setting network ppp_idletime
"$FORM_ppp_idletime"
92 save_setting network ppp_redialperiod
"$FORM_ppp_redialperiod"
93 save_setting network ppp_mtu
"$FORM_ppp_mtu"
95 save_setting network wan_ifname
"ppp0"
97 case "$FORM_ppp_redial" in
99 save_setting network ppp_demand
1
102 save_setting network ppp_demand
""
107 wan_ifname
=${wan_ifname:-$(nvram get wan_ifname)}
108 [ -z "$wan_ifname" -o "${wan_ifname%%[0-9]*}" = "ppp" ] && {
109 wan_device
=${wan_device:-$(nvram get wan_device)}
110 wan_device
=${wan_device:-vlan1}
111 save_setting network wan_ifname
"$wan_device"
118 # detect pptp package and compile option
119 [ -x /sbin
/ifup.pptp
] && {
120 PPTP_OPTION
="option|pptp|PPTP"
121 PPTP_SERVER_OPTION
="field|PPTP Server IP|pptp_server|hidden
122 text|pptp_server_ip|$FORM_pptp_server_ip"
124 [ -x /sbin
/ifup.pppoe
] && {
125 PPPOE_OPTION
="option|pppoe|PPPoE"
129 header
"Network" "WAN" "@TR<<WAN Configuration>>" ' onLoad="modechange()" ' "$SCRIPT_NAME"
132 <script type="text/javascript" src="/webif.js "></script>
133 <script type="text/javascript">
135 function modechange()
138 v = (isset('wan_proto', 'pppoe') || isset('wan_proto', 'pptp'));
139 set_visible('ppp_settings', v);
140 set_visible('username', v);
141 set_visible('passwd', v);
142 set_visible('redial', v);
143 set_visible('mtu', v);
144 set_visible('demand_idletime', v && isset('ppp_redial', 'demand'));
145 set_visible('persist_redialperiod', v && !isset('ppp_redial', 'demand'));
147 v = (isset('wan_proto', 'static') || isset('wan_proto', 'pptp') || isset('wan_proto', 'dhcp'));
148 set_visible('ip_settings', v);
149 set_visible('ipaddr', v);
150 set_visible('netmask', v);
152 v = isset('wan_proto', 'static');
153 set_visible('gateway', v);
154 set_visible('dns', v);
156 v = isset('wan_proto', 'pptp');
157 set_visible('pptp_server',v);
168 start_form|@TR<<WAN Configuration>>
169 field|@TR<<Connection Type>>
170 select|wan_proto|$FORM_wan_proto
171 option|none|@TR<<No WAN#None>>
172 option|dhcp|@TR<<DHCP>>
173 option|static|@TR<<Static IP>>
176 helplink|http://wiki.openwrt.org/OpenWrtDocs/Configuration#head-b62c144b9886b221e0c4b870edb0dd23a7b6acab
178 start_form|@TR<<IP Settings>>|ip_settings|hidden
179 field|@TR<<IP Address>>|ipaddr|hidden
180 text|wan_ipaddr|$FORM_wan_ipaddr
181 field|@TR<<Netmask>>|netmask|hidden
182 text|wan_netmask|$FORM_wan_netmask
183 field|@TR<<Default Gateway>>|gateway|hidden
184 text|wan_gateway|$FORM_wan_gateway
187 helptext|Helptext IP Settings#IP Settings are optional for DHCP and PPTP. If you set them, they are used as defaults in case the DHCP server is unavailable.
189 start_form|@TR<<DNS Servers>>|dns|hidden
190 listedit|dns|$SCRIPT_NAME?wan_proto=static&|$FORM_dns|$FORM_dnsadd
192 helptext|Helptext DNS save#You should save your settings on this page before adding/removing DNS servers
195 start_form|@TR<<PPP Settings>>|ppp_settings|hidden
196 field|@TR<<Redial Policy>>|redial|hidden
197 select|ppp_redial|$FORM_ppp_redial
198 option|demand|@TR<<Connect on Demand>>
199 option|persist|@TR<<Keep Alive>>
200 field|@TR<<Maximum Idle Time>>|demand_idletime|hidden
201 text|ppp_idletime|$FORM_ppp_idletime
202 helpitem|Maximum Idle Time
203 helptext|Helptext Idle Time#The number of seconds without internet traffic that the router should wait before disconnecting from the Internet (Connect on Demand only)
204 field|@TR<<Redial Timeout>>|persist_redialperiod|hidden
205 text|ppp_redialperiod|$FORM_ppp_redialperiod
206 helpitem|Redial Timeout
207 helptext|Helptext Redial Timeout#The number of seconds to wait after receiving no response from the provider before trying to reconnect
208 field|@TR<<Username>>|username|hidden
209 text|ppp_username|$FORM_ppp_username
210 field|@TR<<Password>>|passwd|hidden
211 password|ppp_passwd|$FORM_ppp_passwd
212 field|@TR<<MTU>>|mtu|hidden
213 text|ppp_mtu|$FORM_ppp_mtu
219 ##WEBIF:name:Network:150:WAN