mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 06:08:52 +00:00
Allow global_var off for REMOTE_ADDR
git-svn-id: file:///svn/phpbb/trunk@2327 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
0fb594ca58
commit
812d5a2f35
1 changed files with 10 additions and 17 deletions
|
@ -20,6 +20,11 @@
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
if ( !defined('IN_PHPBB') )
|
||||||
|
{
|
||||||
|
die("Hacking attempt");
|
||||||
|
}
|
||||||
|
|
||||||
error_reporting (E_ERROR | E_WARNING | E_PARSE); // This will NOT report uninitialized variables
|
error_reporting (E_ERROR | E_WARNING | E_PARSE); // This will NOT report uninitialized variables
|
||||||
set_magic_quotes_runtime(0); // Disable magic_quotes_runtime
|
set_magic_quotes_runtime(0); // Disable magic_quotes_runtime
|
||||||
|
|
||||||
|
@ -144,29 +149,17 @@ $nav_links['author'] = array (
|
||||||
//
|
//
|
||||||
if( getenv('HTTP_X_FORWARDED_FOR') != '' )
|
if( getenv('HTTP_X_FORWARDED_FOR') != '' )
|
||||||
{
|
{
|
||||||
$private_ips = array('192.168', '172.16', '10', '224', '240');
|
$client_ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR );
|
||||||
|
|
||||||
if ( preg_match("/^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/", getenv('HTTP_X_FORWARDED_FOR'), $ip_list) )
|
if ( preg_match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/", getenv('HTTP_X_FORWARDED_FOR'), $ip_list) )
|
||||||
{
|
{
|
||||||
$private_ip = false;
|
$private_ip = array('/^127\.0\.0\.1/', '/^192\.168\..*/', '/^172\.16\..*/', '/^10..*/', '/^224..*/', '/^240..*/');
|
||||||
for($i = 0; $i < count($private_ips); $i++)
|
$client_ip = preg_replace($private_ip, $client_ip, $ip_list[1]);
|
||||||
{
|
|
||||||
if ( strpos(' ' . $ip_list[0], $private_ips[$i], 1) == 1 )
|
|
||||||
{
|
|
||||||
$private_ip = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$client_ip = ( !$private_ip ) ? $ip_list[0] : $REMOTE_ADDR;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$client_ip = $REMOTE_ADDR;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$client_ip = $REMOTE_ADDR;
|
$client_ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR );
|
||||||
}
|
}
|
||||||
$user_ip = encode_ip($client_ip);
|
$user_ip = encode_ip($client_ip);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue