Hello Derick,
Saturday, September 1, 2007, 8:37:27 PM, you wrote:
> derick Sat Sep 1 18:37:27 2007 UTC
> Added files:
> /php-src/ext/standard/tests/network ip_x86_64.phpt
> Modified files:
> /php-src/ext/standard basic_functions.c
> Log:
> - Fixed bug #42512 (ip2long('255.255.255.255') should return 4294967295 on
> 64-bit PHP).
>
>
> http://cvs.php.net/viewvc.cgi/php-src/ext/standard/basic_functions.c?r1=1.870&r2=1.871&diff_format=u
> Index: php-src/ext/standard/basic_functions.c
> diff -u php-src/ext/standard/basic_functions.c:1.870
> php-src/ext/standard/basic_functions.c:1.871
> --- php-src/ext/standard/basic_functions.c:1.870 Fri Aug 31 10:45:54
> 2007
> +++ php-src/ext/standard/basic_functions.c Sat Sep 1 18:37:27 2007
> @@ -17,7 +17,7 @@
> +----------------------------------------------------------------------+
> */
>
> -/* $Id: basic_functions.c,v 1.870 2007/08/31 10:45:54 jani Exp $ */
> +/* $Id: basic_functions.c,v 1.871 2007/09/01 18:37:27 derick Exp $ */
>
> #include "php.h"
> #include "php_streams.h"
> @@ -4284,7 +4284,7 @@
> */
> if (addr_len == sizeof("255.255.255.255") - 1 &&
> !memcmp(addr, "255.255.255.255",
> sizeof("255.255.255.255") - 1)) {
> - RETURN_LONG(-1);
> + RETURN_LONG(0xFFFFFFFF);
A Comment would be nice why this is neither -1 nor ~0.
> }
>
> RETURN_FALSE;
> http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/network/ip_x86_64.phpt?view=markup&rev=1.1
> Index: php-src/ext/standard/tests/network/ip_x86_64.phpt
> +++ php-src/ext/standard/tests/network/ip_x86_64.phpt
> --TEST--
> ip2long() & long2ip() tests
> --SKIPIF--
> <?php
> if (PHP_INT_SIZE == 4) die("skip this test is for >32bit platform only");
?>>
> --FILE--
> <?php
> $array = array(
> "127.0.0.1",
> "10.0.0.1",
> "255.255.255.255",
> "255.255.255.0",
> "0.0.0.0",
> "66.163.161.116",
> );
> foreach ($array as $ip) {
> var_dump($long = ip2long($ip));
> var_dump(long2ip($long));
> }
> var_dump(ip2long());
> var_dump(ip2long(""));
> var_dump(ip2long("777.777.777.777"));
> var_dump(ip2long("111.111.111.111"));
> var_dump(ip2long(array()));
> var_dump(long2ip());
> var_dump(long2ip(-110000));
> var_dump(long2ip(""));
> var_dump(long2ip(array()));
> echo "Done\n";
?>>
> --EXPECTF--
> int(2130706433)
> string(9) "127.0.0.1"
> int(167772161)
> string(8) "10.0.0.1"
> int(4294967295)
> string(15) "255.255.255.255"
> int(4294967040)
> string(13) "255.255.255.0"
> int(0)
> string(7) "0.0.0.0"
> int(1118019956)
> string(14) "66.163.161.116"
> Warning: Wrong parameter count for ip2long() in %s on line %d
> NULL
> bool(false)
> bool(false)
> int(1869573999)
> Notice: Array to string conversion in %s on line %d
> bool(false)
> Warning: Wrong parameter count for long2ip() in %s on line %d
> NULL
> string(13) "255.254.82.80"
> string(7) "0.0.0.0"
> Notice: Array to string conversion in %s on line %d
> string(7) "0.0.0.0"
> Done
Best regards,
Marcus
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php