From 1d2b4ffc651bc1f39849c643e69193926611f2ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20A=2E=20Ruszczy=C5=84ski?= Date: Fri, 9 Apr 2010 14:08:20 +0200 Subject: [ticket/9524] IPv6 regex does not match all valid IPv6 addresses starting with :: :: can replace 1 or more groups (not 2 or more) PHPBB3-9524 --- phpBB/develop/regex.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'phpBB/develop') diff --git a/phpBB/develop/regex.php b/phpBB/develop/regex.php index 4498204b4a..8165ba1f21 100644 --- a/phpBB/develop/regex.php +++ b/phpBB/develop/regex.php @@ -18,14 +18,15 @@ $ls32 = "(?:$h16:$h16|$ipv4)"; $ipv6_construct = array( array(false, '', '{6}', $ls32), - array(false, '::', '{5}', $ls32), + array(false, '::', '{0,5}', "(?:$h16(?::$h16)?|$ipv4)"), array('', ':', '{4}', $ls32), array('{1,2}', ':', '{3}', $ls32), array('{1,3}', ':', '{2}', $ls32), array('{1,4}', ':', '', $ls32), array('{1,5}', ':', false, $ls32), array('{1,6}', ':', false, $h16), - array('{1,7}', ':', false, '') + array('{1,7}', ':', false, ''), + array(false, '::', false, '') ); $ipv6 = '(?:'; -- cgit v1.2.1