1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
3 (c) 2005 U.S. Robotics Corporation
9 <link href="usr_main.css" rel="stylesheet" type="text/css">
10 <link href="usr_menus.css" rel="stylesheet" type="text/css"><script src="usr_menus.js" type="text/javascript"></script><script src="usr_menus_build.js" type="text/javascript"></script>
11 <script src="usr_common.js" type="text/javascript"></script>
13 <meta HTTP-EQUIV='Pragma' CONTENT='no-cache'>
15 <script type="text/javascript" src="util.js"></script>
16 <script type="text/javascript">
19 setPageTitle("<%ejGetWlJS(wlInterface)%>");
22 var loc = 'scoutflt.cmd?action=add';
24 with ( document.forms[0] ) {
25 if ( txtfltname.value == '' ) {
26 msg = 'Please enter outgoing IP filtering name.';
31 if ( isValidName(txtfltname.value) == false ) {
32 msg = 'Please enter valid outgoing IP filtering name: No special characters.';
37 if ( srcaddr.value == "" && srcmask.value == "" && srcport.value == "" &&
38 dstaddr.value == "" && dstmask.value == "" && dstport.value == "" &&
39 protocol.selectedIndex < 0 ) {
40 msg = 'At least one condition must be specified.'
45 if ( srcaddr.value != "" && isValidIpAddress(srcaddr.value) == false ) {
46 msg = 'Source address "' + srcaddr.value + '" is invalid IP address.';
51 if ( srcmask.value != "" && isValidSubnetMask(srcmask.value) == false ) {
52 msg = 'Source subnet mask "' + srcmask.value + '" is invalid subnet mask.';
57 if ( srcaddr.value == "" && srcmask.value != "" ) {
58 msg = 'Cannot have source subnet mask without source IP address.';
63 if ( srcport.value != "" && isValidPort(srcport.value) == false ) {
64 msg = 'Source port "' + srcport.value + '" is invalid port number or port range.';
69 if ( dstaddr.value != "" && isValidIpAddress(dstaddr.value) == false ) {
70 msg = 'Destination address "' + dstaddr.value + '" is invalid IP address.';
75 if ( dstmask.value != "" && isValidSubnetMask(dstmask.value) == false ) {
76 msg = 'Destination subnet mask "' + dstmask.value + '" is invalid subnet mask.';
81 if ( dstaddr.value == "" && dstmask.value != "" ) {
82 msg = 'Cannot have destination subnet mask without destination IP address.';
87 if ( dstport.value != "" && isValidPort(dstport.value) == false ) {
88 msg = 'Destination port "' + dstport.value + '" is invalid port number or port range.';
93 if ( (srcport.value != "" || dstport.value != "") &&
94 (protocol.selectedIndex < 0 || protocol.selectedIndex == 3) ) {
95 msg = 'TCP or UDP Protocol must be selected together with port number';
100 // outgoing IP filter name
101 loc += '&fltName=' + encodeUrl(txtfltname.value);
104 idx = protocol.selectedIndex;
105 val = protocol.options[idx].value;
106 loc += '&protocol=' + val;
109 if ( srcaddr.value != "" )
110 loc += '&srcAddr=' + srcaddr.value;
112 // source subnet mask
113 if ( srcmask.value != "" )
114 loc += '&srcMask=' + srcmask.value;
117 if ( srcport.value != "" )
118 loc += '&srcPort=' + srcport.value;
120 // destination address
121 if ( dstaddr.value != "" )
122 loc += '&dstAddr=' + dstaddr.value;
124 // destination subnet mask
125 if ( dstaddr.value != "" )
126 loc += '&dstMask=' + dstmask.value;
129 if ( dstport.value != "" )
130 loc += '&dstPort=' + dstport.value;
133 var code = 'location = "' + loc + '"';
140 <body onload="initMenu();">
142 <script type="text/javascript">
143 writeHeader("Add IP Filter", "<%ejGetJS(curUserName)%>", "<%ejGetOther(sysInfo, adslStd)%>", "<%ejGetOther(sysInfo, noBrPrtcl)%>", <%ejGetOther(sysInfo, pppIpExtension)%>, <%ejGetOther(sysInfo, enblFirewall)%>, <%ejGetOther(sysInfo, enblNat)%>, "<%ejGetWlJS(wlInterface)%>", <%ejGetJS(enblQos)%>);
148 <p>Create a filter to identify the outgoing IP traffic by specifying at least one
149 condition below. If multiple conditions are specified, all of them take effect.
150 Press <b>Apply</b> to save and activate the filter.</p>
152 <table border="0" cellpadding="0" cellspacing="0">
154 <td><label for="txtfltname">Filter name:</label></td>
155 <td><input type='text' maxlength="15" size="22" name="txtfltname" id="txtfltname"></td>
158 <td colspan="2"> </td>
161 <td><label for="">Protocol:</label></td>
162 <td><select name='protocol' id='protocol'>
163 <option value="0">TCP/UDP</option>
164 <option value="1">TCP</option>
165 <option value="2">UDP</option>
166 <option value="3">ICMP</option>
170 <td><label for="srcaddr">Source IP address:</label></td>
171 <td><input type='text' size="22" name="srcaddr" id="srcaddr"></td>
174 <td><label for="srcmask">Source subnet mask:</label></td>
175 <td><input type='text' size="22" name="srcmask" id="srcmask"></td>
178 <td><label for="srcport">Source port:</label></td>
179 <td><input type='text' size="22" name="srcport" id="srcport"> (port or port:port)</td>
182 <td><label for="dstaddr">Destination IP address:</label></td>
183 <td><input type='text' size="22" name="dstaddr" id="dstaddr"></td>
186 <td><label for="dstmask">Destination subnet mask:</label></td>
187 <td><input type='text' size="22" name="dstmask" id="dstmask"></td>
190 <td><label for="dstport">Destination port:</label></td>
191 <td><input type='text' size="22" name="dstport" id="dstport"> (port or port:port)</td>
194 <p><input type='button' onClick='btnApply()' value='Apply'></p>
197 <script type="text/javascript">