Bug #16020 Updated: long2ip Returns Incorrect Results

From: Date: Tue, 12 Mar 2002 13:58:06 +0000
Subject: Bug #16020 Updated: long2ip Returns Incorrect Results
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-2306@lists.php.net to get a copy of this message
ID: 16020 Updated by: sander@php.net Reported By: lee@nerds.org.uk -Status: Open +Status: Feedback Bug Type: Unknown/Other Function Operating System: FreeBSD 4.4-STABLE i386 PHP Version: 4.1.2 New Comment: Can you provide a simple sample script with data that shows the problem? Previous Comments: ------------------------------------------------------------------------ [2002-03-12 08:47:38] lee@nerds.org.uk I have found some problems where long2ip (and I would presume ip2long by the same token) seems to return an IP address offset by one. I'm not sure if it is the implmentation of inet_ntoa on the platform I am using or something else. Even if this is a problem with a particular version of a library on my machine, maybe it might be worth using a method other than inet_ntoa for ease of platform independance? Perhaps something along there lines.... ? struct inet4addr { unsigned int a:8; unsigned int b:8; unsigned int c:8; unsigned int d:8; }; typedef union { unsigned int inet4dec; struct inet4addr inet4oct; } inet4oct; blah.inet4dec = <SOME LONG IP HERE>; printf("%i.%i.%i.%i\n", blah.inet4oct.a, blah.inet4oct.b,blah.inet4oct.c,blah.inet4oct.d); ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=16020&edit=1

« previous php.bugs (#2306) next »