summaryrefslogtreecommitdiffstats
path: root/system/core/Input.php
diff options
context:
space:
mode:
authorPhil Sturgeon <email@philsturgeon.co.uk>2012-03-14 11:51:36 +0100
committerPhil Sturgeon <email@philsturgeon.co.uk>2012-03-14 11:51:36 +0100
commit15a29e11a1003ff253b4df7c8a4c6e97b052a06d (patch)
tree8297ecf0727c574bd90cb12413f687f8413dce2e /system/core/Input.php
parent0fe8c8e21315e00dbc06a87290fb268a2dc999a9 (diff)
parentce707b4cafd64b95031690cf927584b1d60c7ad7 (diff)
Merged unit test progress.
Diffstat (limited to 'system/core/Input.php')
-rwxr-xr-xsystem/core/Input.php31
1 files changed, 1 insertions, 30 deletions
diff --git a/system/core/Input.php b/system/core/Input.php
index 54b7e0923..901b4147e 100755
--- a/system/core/Input.php
+++ b/system/core/Input.php
@@ -366,36 +366,7 @@ class CI_Input {
*/
public function valid_ip($ip)
{
- // if php version >= 5.2, use filter_var to check validate ip.
- if (function_exists('filter_var'))
- {
- return (bool) filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4);
- }
-
- $ip_segments = explode('.', $ip);
-
- // Always 4 segments needed
- if (count($ip_segments) !== 4)
- {
- return FALSE;
- }
- // IP can not start with 0
- if ($ip_segments[0][0] == '0')
- {
- return FALSE;
- }
- // Check each segment
- foreach ($ip_segments as $segment)
- {
- // IP segments must be digits and can not be
- // longer than 3 digits or greater then 255
- if ($segment == '' OR preg_match('/[^0-9]/', $segment) OR $segment > 255 OR strlen($segment) > 3)
- {
- return FALSE;
- }
- }
-
- return TRUE;
+ return (bool) filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4);
}
// --------------------------------------------------------------------