#10681 [Com]: Fix for #9698 breaks more than it fixes
| From: | asian-school1215 at hotmail dot com | Date: | Tue, 20 Jul 2004 15:02:23 +0000 |
| Subject: | #10681 [Com]: Fix for #9698 breaks more than it fixes | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-62842@lists.php.net to get a copy of this message | ||
ID: 10681
Comment by: asian-school1215 at hotmail dot com
Reported By: kettler at gmx dot net
Status: Closed
Bug Type: Network related
Operating System: Linux
PHP Version: 4.0 Latest CVS (05/05/2001)
New Comment:
<a href=http://quallityrussian-spa.da.ru>school
asian</a>
Previous Comments:
------------------------------------------------------------------------
[2001-05-19 20:27:12] derick@php.net
I applied the patch, thanks for making it available. The original
'fix'
for bug #9698 has been reversed too. These fixes will be in PHP 4.0.6.
Derick
------------------------------------------------------------------------
[2001-05-09 11:28:28] sniper@php.net
Someone who knows that part of PHP better should check the
patch provided. Marked as to be fixed before 4.0.6
--Jani
------------------------------------------------------------------------
[2001-05-06 13:10:26] kettler at gmx dot net
Sure. Here it is:
http://global.team17.com/php4-unsigned.patch
Works for both printf and sprintf. Is there another function I missed?
------------------------------------------------------------------------
[2001-05-06 12:00:05] derick@php.net
Sounds ok to me, are you willing to make a patch for this?
------------------------------------------------------------------------
[2001-05-05 04:40:03] kettler at gmx dot net
<?php
$ipaslong = ip2long("208.247.106.187");
print long2ip($ipaslong)."\n";
print bin2hex(pack("N", $ipaslong))."\n";
?>
That script run with PHP 4.0.5 prints:
208.247.106.187
d0f76abb
whereas with the latest CVS version it prints:
127.255.255.255
7fffffff
That makes that function completely unusable for me (and for others
probably too). I have another proposal for fixing bug #9698, and that
is implementing %u as a sprintf format specifier to output unsigned
longs instead of signed.
This way he could use the following script for his problem (should go
onto the ip2long page then):
<?php
$ip = gethostbyname("www.php.net");
$out = sprintf("http://%u/<br>\n", ip2long($ip));
echo $out;
?>
If that fix would be accepted (and the other fix rolled back), I could
add %u to sprintf myself and post it here.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=10681&edit=1