From bbb5f99b40b3c5b04afcb697033439152b23b7a8 Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Thu, 24 Sep 2015 21:40:54 +0900 Subject: [PATCH] =?UTF-8?q?IPv6=20=EC=82=AC=EC=9A=A9=EC=8B=9C=20/48=20?= =?UTF-8?q?=EC=9D=B4=EC=83=81=20=EB=B3=80=EA=B2=BD=EB=90=98=EB=A9=B4=20?= =?UTF-8?q?=EC=84=B8=EC=85=98=EC=9D=84=20=EC=9C=A0=EC=A7=80=ED=95=98?= =?UTF-8?q?=EC=A7=80=20=EC=95=8A=EB=8F=84=EB=A1=9D=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/member/member.model.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/modules/member/member.model.php b/modules/member/member.model.php index e7c90c264..1ff9b6ce2 100644 --- a/modules/member/member.model.php +++ b/modules/member/member.model.php @@ -196,8 +196,17 @@ class memberModel extends member { return true; } + elseif(filter_var($_SESSION['ipaddress'], FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) + { + // IPv6: require same /48 + if(strncmp(inet_pton($_SESSION['ipaddress']), inet_pton($_SERVER['REMOTE_ADDR']), 6) == 0) + { + return true; + } + } else { + // IPv4: require same /24 if(ip2long($_SESSION['ipaddress']) >> 8 == ip2long($_SERVER['REMOTE_ADDR']) >> 8) { return true;