IPv6 사용시 /48 이상 변경되면 세션을 유지하지 않도록 변경

This commit is contained in:
Kijin Sung 2015-09-24 21:40:54 +09:00
parent 0326a8b5d1
commit bbb5f99b40

View file

@ -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;