From 9b384efd948fd202f64bb4a67b52feb58cee43dc Mon Sep 17 00:00:00 2001 From: ando-masaki Date: Fri, 22 Nov 2013 16:55:26 +0900 Subject: [PATCH] Update IPv4.php Fixed following bug. PHP Error: Notice - Undefined index: Net_IPv4_Netmask_Map File Path: Net/IPv4.php (line: 267) I discovered this bug when I was testing with phpunit. --- Net/IPv4.php | 75 ++++++++++++++++++++++++++-------------------------- 1 file changed, 38 insertions(+), 37 deletions(-) diff --git a/Net/IPv4.php b/Net/IPv4.php index 91fe41e..0eb9108 100644 --- a/Net/IPv4.php +++ b/Net/IPv4.php @@ -32,41 +32,7 @@ * * @global array $GLOBALS['Net_IPv4_Netmask_Map'] */ -$GLOBALS['Net_IPv4_Netmask_Map'] = array( - 0 => "0.0.0.0", - 1 => "128.0.0.0", - 2 => "192.0.0.0", - 3 => "224.0.0.0", - 4 => "240.0.0.0", - 5 => "248.0.0.0", - 6 => "252.0.0.0", - 7 => "254.0.0.0", - 8 => "255.0.0.0", - 9 => "255.128.0.0", - 10 => "255.192.0.0", - 11 => "255.224.0.0", - 12 => "255.240.0.0", - 13 => "255.248.0.0", - 14 => "255.252.0.0", - 15 => "255.254.0.0", - 16 => "255.255.0.0", - 17 => "255.255.128.0", - 18 => "255.255.192.0", - 19 => "255.255.224.0", - 20 => "255.255.240.0", - 21 => "255.255.248.0", - 22 => "255.255.252.0", - 23 => "255.255.254.0", - 24 => "255.255.255.0", - 25 => "255.255.255.128", - 26 => "255.255.255.192", - 27 => "255.255.255.224", - 28 => "255.255.255.240", - 29 => "255.255.255.248", - 30 => "255.255.255.252", - 31 => "255.255.255.254", - 32 => "255.255.255.255" - ); +$GLOBALS['Net_IPv4_Netmask_Map'] = Net_IPv4::$Net_IPv4_Netmask_Map; // }}} // {{{ Net_IPv4 @@ -96,6 +62,41 @@ class Net_IPv4 var $network = ""; var $broadcast = ""; var $long = 0; + public static $Net_IPv4_Netmask_Map = array( + 0 => "0.0.0.0", + 1 => "128.0.0.0", + 2 => "192.0.0.0", + 3 => "224.0.0.0", + 4 => "240.0.0.0", + 5 => "248.0.0.0", + 6 => "252.0.0.0", + 7 => "254.0.0.0", + 8 => "255.0.0.0", + 9 => "255.128.0.0", + 10 => "255.192.0.0", + 11 => "255.224.0.0", + 12 => "255.240.0.0", + 13 => "255.248.0.0", + 14 => "255.252.0.0", + 15 => "255.254.0.0", + 16 => "255.255.0.0", + 17 => "255.255.128.0", + 18 => "255.255.192.0", + 19 => "255.255.224.0", + 20 => "255.255.240.0", + 21 => "255.255.248.0", + 22 => "255.255.252.0", + 23 => "255.255.254.0", + 24 => "255.255.255.0", + 25 => "255.255.255.128", + 26 => "255.255.255.192", + 27 => "255.255.255.224", + 28 => "255.255.255.240", + 29 => "255.255.255.248", + 30 => "255.255.255.252", + 31 => "255.255.255.254", + 32 => "255.255.255.255" + ); // }}} // {{{ validateIP() @@ -154,7 +155,7 @@ function check_ip($ip) */ function validateNetmask($netmask) { - if (! in_array($netmask, $GLOBALS['Net_IPv4_Netmask_Map'])) { + if (! in_array($netmask, self::$Net_IPv4_Netmask_Map)) { return false; } return true; @@ -264,7 +265,7 @@ function parseAddress($address) */ function calculate() { - $validNM = $GLOBALS['Net_IPv4_Netmask_Map']; + $validNM = self::$Net_IPv4_Netmask_Map; if (! is_a($this, "net_ipv4")) { $myself = new Net_IPv4;