fix ip verification functions
This commit is contained in:
@@ -37,12 +37,18 @@ class WTVAdmin {
|
|||||||
}
|
}
|
||||||
|
|
||||||
isInSubnet(ip, subnet) {
|
isInSubnet(ip, subnet) {
|
||||||
var mask, base_ip, long_ip = this.ip2long(ip);
|
if (subnet.indexOf('/') == -1) {
|
||||||
if ((mask = subnet.match(/^(.*?)\/(\d{1,2})$/)) && ((base_ip = this.ip2long(mask[1])) >= 0)) {
|
var mask, base_ip, long_ip = this.ip2long(ip);
|
||||||
var freedom = Math.pow(2, 32 - parseInt(mask[2]));
|
var mask2, base_ip2, long_ip2 = this.ip2long(ip);
|
||||||
return (long_ip > base_ip) && (long_ip < base_ip + freedom - 1);
|
return (long_ip == long_ip2);
|
||||||
|
} else {
|
||||||
|
var mask, base_ip, long_ip = this.ip2long(ip);
|
||||||
|
if ((mask = subnet.match(/^(.*?)\/(\d{1,2})$/)) && ((base_ip = this.ip2long(mask[1])) >= 0)) {
|
||||||
|
var freedom = Math.pow(2, 32 - parseInt(mask[2]));
|
||||||
|
return (long_ip > base_ip) && (long_ip < base_ip + freedom - 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
rejectConnection(reason_is_ssid) {
|
rejectConnection(reason_is_ssid) {
|
||||||
|
|||||||
@@ -680,12 +680,18 @@ class WTVClientSessionData {
|
|||||||
};
|
};
|
||||||
|
|
||||||
var isInSubnet = function (ip, subnet) {
|
var isInSubnet = function (ip, subnet) {
|
||||||
var mask, base_ip, long_ip = ip2long(ip);
|
if (subnet.indexOf('/') == -1) {
|
||||||
if ((mask = subnet.match(/^(.*?)\/(\d{1,2})$/)) && ((base_ip = ip2long(mask[1])) >= 0)) {
|
var mask, base_ip, long_ip = this.ip2long(ip);
|
||||||
var freedom = Math.pow(2, 32 - parseInt(mask[2]));
|
var mask2, base_ip2, long_ip2 = this.ip2long(ip);
|
||||||
return (long_ip > base_ip) && (long_ip < base_ip + freedom - 1);
|
return (long_ip == long_ip2);
|
||||||
|
} else {
|
||||||
|
var mask, base_ip, long_ip = this.ip2long(ip);
|
||||||
|
if ((mask = subnet.match(/^(.*?)\/(\d{1,2})$/)) && ((base_ip = this.ip2long(mask[1])) >= 0)) {
|
||||||
|
var freedom = Math.pow(2, 32 - parseInt(mask[2]));
|
||||||
|
return (long_ip > base_ip) && (long_ip < base_ip + freedom - 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
|
||||||
var rejectSSIDConnection = function (blacklist) {
|
var rejectSSIDConnection = function (blacklist) {
|
||||||
|
|||||||
Reference in New Issue
Block a user