diff --git a/engine/lib/tool/client.php.inc b/engine/lib/tool/client.php.inc index 4fef4898..06ddec12 100755 --- a/engine/lib/tool/client.php.inc +++ b/engine/lib/tool/client.php.inc @@ -4,7 +4,7 @@ * @details Engine / Tool Library * @file engine/lib/tool/client.php.inc * @author CaMykS Team - * @version 1.0.46 + * @version 1.0.47 * @date Creation: Jun 2007 * @date Modification: Nov 2018 * @copyright 2007 - 2018 CaMykS Team @@ -18,17 +18,22 @@ */ function client_getIp() { if (!empty($_SERVER['HTTP_CLIENT_IP'])) - return $_SERVER['HTTP_CLIENT_IP']; + $ip = $_SERVER['HTTP_CLIENT_IP']; elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) - return $_SERVER['HTTP_X_FORWARDED_FOR']; + $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; elseif(!empty($_SERVER['HTTP_X_FORWARDED'])) - return $_SERVER['HTTP_X_FORWARDED']; + $ip = $_SERVER['HTTP_X_FORWARDED']; elseif(!empty($_SERVER['HTTP_FORWARDED_FOR'])) - return $_SERVER['HTTP_FORWARDED_FOR']; + $ip = $_SERVER['HTTP_FORWARDED_FOR']; elseif(!empty($_SERVER['HTTP_FORWARDED'])) - return $_SERVER['HTTP_FORWARDED']; + $ip = $_SERVER['HTTP_FORWARDED']; elseif(!empty($_SERVER['REMOTE_ADDR'])) - return $_SERVER['REMOTE_ADDR']; + $ip = $_SERVER['REMOTE_ADDR']; + else + return ''; + + if (string_isValidIPv4($ip)) + return $ip; return ''; }