ipaddresses : update CIDR tests : was not catch error if the last char of CIDR was a letter
git-svn-id: https://svn.fournier38.fr/svn/ProgSVN/trunk@4368 bf3deb0d-5f1a-0410-827f-c0cc1f45334c
This commit is contained in:
@@ -77,7 +77,6 @@ class ipaddresses
|
|||||||
@list ($ip, $cidr) = @explode ("/", $ip);
|
@list ($ip, $cidr) = @explode ("/", $ip);
|
||||||
if ($cidr === null)
|
if ($cidr === null)
|
||||||
return false;
|
return false;
|
||||||
$cidr = intval ($cidr);
|
|
||||||
$rc = filter_var ($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4);
|
$rc = filter_var ($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4);
|
||||||
if ($rc === false)
|
if ($rc === false)
|
||||||
return false;
|
return false;
|
||||||
@@ -98,7 +97,6 @@ class ipaddresses
|
|||||||
@list ($ip, $cidr) = @explode ("/", $ip);
|
@list ($ip, $cidr) = @explode ("/", $ip);
|
||||||
if ($cidr === null)
|
if ($cidr === null)
|
||||||
return false;
|
return false;
|
||||||
$cidr = intval ($cidr);
|
|
||||||
$rc = filter_var ($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6);
|
$rc = filter_var ($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6);
|
||||||
if ($rc === false)
|
if ($rc === false)
|
||||||
return false;
|
return false;
|
||||||
@@ -113,9 +111,11 @@ class ipaddresses
|
|||||||
*/
|
*/
|
||||||
public function validCIDR ($cidr)
|
public function validCIDR ($cidr)
|
||||||
{
|
{
|
||||||
if (! is_integer ($cidr))
|
if (! is_integer ($cidr) && ! is_integer ($cidr))
|
||||||
throw new \Exception (dgettext("domframework", "Invalid CIDR provided"),
|
throw new \Exception (dgettext("domframework", "Invalid CIDR provided"),
|
||||||
500);
|
500);
|
||||||
|
if (strspn ($cidr, "0123456879") !== strlen ($cidr))
|
||||||
|
return false;
|
||||||
if ($cidr < 0 || $cidr > 128)
|
if ($cidr < 0 || $cidr > 128)
|
||||||
return false;
|
return false;
|
||||||
return true;
|
return true;
|
||||||
@@ -127,9 +127,11 @@ class ipaddresses
|
|||||||
*/
|
*/
|
||||||
public function validIPv4CIDR ($cidr)
|
public function validIPv4CIDR ($cidr)
|
||||||
{
|
{
|
||||||
if (! is_integer ($cidr))
|
if (! is_integer ($cidr) && ! is_string ($cidr))
|
||||||
throw new \Exception (dgettext("domframework", "Invalid CIDR provided"),
|
throw new \Exception (dgettext("domframework", "Invalid CIDR provided"),
|
||||||
500);
|
500);
|
||||||
|
if (strspn ($cidr, "0123456879") !== strlen ($cidr))
|
||||||
|
return false;
|
||||||
if ($cidr < 0 || $cidr > 32)
|
if ($cidr < 0 || $cidr > 32)
|
||||||
return false;
|
return false;
|
||||||
return true;
|
return true;
|
||||||
@@ -141,9 +143,11 @@ class ipaddresses
|
|||||||
*/
|
*/
|
||||||
public function validIPv6CIDR ($cidr)
|
public function validIPv6CIDR ($cidr)
|
||||||
{
|
{
|
||||||
if (! is_integer ($cidr))
|
if (! is_integer ($cidr) && ! is_string ($cidr))
|
||||||
throw new \Exception (dgettext("domframework", "Invalid CIDR provided"),
|
throw new \Exception (dgettext("domframework", "Invalid CIDR provided"),
|
||||||
500);
|
500);
|
||||||
|
if (strspn ($cidr, "0123456879") !== strlen ($cidr))
|
||||||
|
return false;
|
||||||
if ($cidr < 0 || $cidr > 128)
|
if ($cidr < 0 || $cidr > 128)
|
||||||
return false;
|
return false;
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
Reference in New Issue
Block a user