diff options
author | Igor Wiedler <igor@wiedler.ch> | 2010-09-16 23:39:01 +0200 |
---|---|---|
committer | Igor Wiedler <igor@wiedler.ch> | 2010-09-16 23:39:01 +0200 |
commit | cdadda35540d4909a00de01c1671251684e2801f (patch) | |
tree | c16b5e1eb8c3b27ab50550d5219d24f2667391b4 /phpBB/includes/session.php | |
parent | 2376f077415814b0a113c1095ad49038e0186a98 (diff) | |
parent | 41245f9f7ac1f588351ddaa8128b499503416f54 (diff) | |
download | forums-cdadda35540d4909a00de01c1671251684e2801f.tar forums-cdadda35540d4909a00de01c1671251684e2801f.tar.gz forums-cdadda35540d4909a00de01c1671251684e2801f.tar.bz2 forums-cdadda35540d4909a00de01c1671251684e2801f.tar.xz forums-cdadda35540d4909a00de01c1671251684e2801f.zip |
Merge branch 'develop-olympus' into develop
* develop-olympus:
[ticket/9091] Extract IPv4 address from addresses mapped into IPv6.
Diffstat (limited to 'phpBB/includes/session.php')
-rw-r--r-- | phpBB/includes/session.php | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/phpBB/includes/session.php b/phpBB/includes/session.php index d4eac553e9..cc216392b8 100644 --- a/phpBB/includes/session.php +++ b/phpBB/includes/session.php @@ -285,6 +285,17 @@ class session break; } + // Quick check for IPv4-mapped address in IPv6 + if (stripos($ip, '::ffff:') === 0) + { + $ipv4 = substr($ip, 7); + + if (preg_match(get_preg_expression('ipv4'), $ipv4)) + { + $ip = $ipv4; + } + } + // Use the last in chain $this->ip = $ip; } |