Bug #55472 [Opn]: ip2long(integer) returns integer
Edit report at https://bugs.php.net/bug.php?id=55472&edit=1
ID: 55472
Updated by: pajoye@php.net
Reported by: php at linuxhosted dot ca
Summary: ip2long(integer) returns integer
Status: Open
Type: Bug
Package: *Network Functions
Operating System: Windows
PHP Version: 5.3.7
-Assigned To:
+Assigned To: pajoye
Block user comment: N
Private report: N
New Comment:
It is as it can be considered as valid IP and it is what happens on Windows, using
the underlying equivalent API.
That being said, I will double check again with the inent team at msft to be sure
that there is no bug in the API itself.
assigned to me.
Previous Comments:
------------------------------------------------------------------------
[2011-08-23 16:09:32] php at linuxhosted dot ca
pajoye, this is not a documentation bug
------------------------------------------------------------------------
[2011-08-23 15:10:29] php at linuxhosted dot ca
As kalle has said, this is not a documentation bug. The inet_ntop() and inet_pton() functions have
existed on Windows since 5.3
------------------------------------------------------------------------
[2011-08-22 13:55:44] kalle@php.net
(Ignore the assigned status laruence, just to notify you)
We do have inet_ntop() + inet_pton() on Windows, see win32/inet.c which we implemented in 5.3 so if
thats the case that we fall back to inet_addr() on Windows its a bug as they are natively
implemented.
After it might be worth setting this bug to "To be documented" so the behaviour can indeed
be noted if not already in the manual.
------------------------------------------------------------------------
[2011-08-21 10:10:40] laruence@php.net
in the OS without inet_ntop, php ip2long use inet_addr handle the conversion,
obviously there are difference between these two function when meet a not well-
format numbers-and-dots notation.
http://www.kernel.org/doc/man-pages/online/pages/man3/inet_pton.3.html
http://publibn.boulder.ibm.com/doc_link/en_US/a_doc_lib/libs/commtrf2/inet_addr.
htm
maybe the document should be more clearly to explain the difference?
------------------------------------------------------------------------
[2011-08-21 03:09:36] php at linuxhosted dot ca
Description:
------------
On windows, the ip2long function does not return false on an invalid input, on other operating
systems it properly returns false.
Test script:
---------------
var_dump(ip2long(26));
Expected result:
----------------
bool(false)
Actual result:
--------------
int(26)
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=55472&edit=1
Thread (9 messages)