?? checkrule.js
字號:
/*
* File: CheckRule.js
* Author: Espinho
* Description: Controlla la correttezza dei campi di inserimento di una rule
*/
function isCorrectIp(ip){
/*Controlla la correttezza di un ip*/
if(ip == ""){
return true;
}
var pattern4 = new RegExp("^[A-Za-z]{1}[A-Za-z0-9\-\.]+$");
var pattern3 = new RegExp("([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\/([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$");
var pattern2 = new RegExp("([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\/([0-9]{1,2})$");
var pattern = new RegExp("([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$");
if(pattern4.test(ip)){
return true;
}else if(pattern3.test(ip)){
result = pattern3.exec(ip);
for(i=0;i<8;i++){
if(result[i+1] > 255){
return false;
}
}
return true;
}else if(pattern2.test(ip)){
result = pattern2.exec(ip);
for(i=0;i<4;i++){
if(result[i+1] > 255){
return false;
}
}
if(result[4] > 32){
return false;
}
return true;
}else if(pattern.test(ip)){
result = pattern.exec(ip);
for(i=0;i<4;i++){
if(result[i+1] > 255){
return false;
}
}
return true;
}else{
return false;
}
}
function isCorrectPort(port){
/*Controlla la correttezza di una porta*/
if(port == ""){
return true;
}
var pattern = new RegExp("[0-9]+");
if(pattern.test(port) && port < 65535){
return true;
}
return false;
}
function control(){
/*Controlla la correttezza dei dati inseriti e restituisce i corrispondenti errori*/
var source = window.document.getElementById('saddr').value;
var destination = window.document.getElementById('daddr').value;
var sport = window.document.getElementById('sport').value;
var dport = window.document.getElementById('dport').value;
var errori = "";
if(!isCorrectIp(source)){
errori += "Check source address";
}
if(!isCorrectIp(destination)){
if(errori == ""){
errori += "Check destination address";
}else{
errori += ", destination address";
}
}
if(!isCorrectPort(sport)){
if(errori == ""){
errori += "Check source port";
}else{
errori += ", source port";
}
}
if(!isCorrectPort(dport)){
if(errori == ""){
errori += "Check destination port";
}else{
errori += ", destination port";
}
}
if(errori == ""){
window.document.forms[0].submit();
}else{
alert(errori);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -