diff options
author | Git <git@what.cd> | 2014-08-11 08:00:26 +0000 |
---|---|---|
committer | Git <git@what.cd> | 2014-08-11 08:00:26 +0000 |
commit | 4a08c9ccfba7d2e35de065351835e2fa107f06f5 (patch) | |
tree | 1c5bdfe7121f2b273e7722792818068b41ec0081 | |
parent | a6d7b4ce4017018ab5f38fa676df425627043275 (diff) | |
download | Gazelle-4a08c9ccfba7d2e35de065351835e2fa107f06f5.zip Gazelle-4a08c9ccfba7d2e35de065351835e2fa107f06f5.tar.gz Gazelle-4a08c9ccfba7d2e35de065351835e2fa107f06f5.tar.bz2 |
Empty commit
-rw-r--r-- | classes/tools.class.php | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/classes/tools.class.php b/classes/tools.class.php index e2eb3b5..7f1c4f5 100644 --- a/classes/tools.class.php +++ b/classes/tools.class.php @@ -283,5 +283,20 @@ class Tools { WHERE UserID = \''.db_string($UserID).'\''); G::$DB->set_query_id($QueryID); } + + /** + * Check if an IP is part of a given CIDR range. + * @param string $CheckIP the IP to be looked up + * @param string $Subnet the CIDR subnet to be checked against + */ + public static function check_cidr_range($CheckIP, $Subnet) { + $IP = ip2long($CheckIP); + $CIDR = split('/',$Subnet); + $SubnetIP = ip2long($CIDR[0]); + $SubnetMaskBits = 32 - $CIDR[1]; + + return (($IP>>$SubnetMaskBits) == ($SubnetIP>>$SubnetMaskBits)); + } + } ?> |