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

Reply via email to