$ip_oct = preg_replace( '/(^|:)0+' . RE_IPV6_WORD . '/', '$1$2', $ip_oct );
return $ip_oct;
}
+
+ /**
+ * Converts a hexadecimal number to an IPv4 address in octet notation
+ * @param $ip string Hex IP
+ * @return string
+ */
+ public static function hexToIP($ip)
+ {
+ // Converts a hexadecimal IP to nnn.nnn.nnn.nnn format
+ $dec = wfBaseConvert($ip, 16, 10);
+ $parts[3] = $dec % 256;
+ $dec /= 256;
+ $parts[2] = $dec % 256;
+ $dec /= 256;
+ $parts[1] = $dec % 256;
+ $parts[0] = $dec / 256;
+ return implode('.', array_reverse($parts));
+ }
/**
* Convert a network specification in IPv6 CIDR notation to an integer network and a number of bits
$block['reason'] = $row->ipb_reason;
if($fld_range)
{
- $block['rangestart'] = self::convertHexIP($row->ipb_range_start);
- $block['rangeend'] = self::convertHexIP($row->ipb_range_end);
+ $block['rangestart'] = IP::hexToIP($row->ipb_range_start);
+ $block['rangeend'] = IP::hexToIP($row->ipb_range_end);
}
if($fld_flags)
{
$this->usernames[] = $name;
}
- protected static function convertHexIP($ip)
- {
- // Converts a hexadecimal IP to nnn.nnn.nnn.nnn format
- $dec = wfBaseConvert($ip, 16, 10);
- $parts[3] = $dec % 256;
- $dec /= 256;
- $parts[2] = $dec % 256;
- $dec /= 256;
- $parts[1] = $dec % 256;
- $parts[0] = $dec / 256;
- return implode('.', array_reverse($parts));
- }
-
public function getAllowedParams() {
return array (
'start' => array(