PHP 4.0 Bug #8856 Updated: gethostbyname returns hostname instead of adress
| From: | niels at creatype dot nl | Date: | Sat, 10 Mar 2001 22:13:23 +0000 |
| Subject: | PHP 4.0 Bug #8856 Updated: gethostbyname returns hostname instead of adress | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-48605@lists.php.net to get a copy of this message | ||
ID: 8856
User Update by: niels@creatype.nl
Old-Status: Feedback
Status: Open
Bug Type: Network related
Description: gethostbyname returns hostname instead of adress
>It sounds like a DNS problem to me.
>It would be wise if you check that out too.
I though about this too at first, but the right information is in both cases stored in the
host_struct->h_addr_list.
But the information is only correct if you memcpy it to a.s_addr, instead of typecasting it.
Previous Comments:
---------------------------------------------------------------------------
[2001-03-10 16:30:21] derick@php.net
It sounds like a DNS problem to me. It would be wise if you check that out too.
---------------------------------------------------------------------------
[2001-03-10 16:12:27] sniper@php.net
Works for me just fine with latest CVS. Please try the
latest CVS snapshot from http://snaps.php.net/
--Jani
---------------------------------------------------------------------------
[2001-01-23 12:28:11] niels@creatype.nl
The gethostbyname doesn't seem to work on some of the systems I use. The problem only occurs on
some machines, others work fine. The problem only occurs on 4.0x, but not on 3.0x on the same
machine.
All machines use the same build of php4.
For example:
<PHP
echo (gethostbyname ("sql-1.vuurwerk.nl"));
?>
Result:
sql-1.vuurwerk.nl
The bug? also affects functions like mysql_connect.
I am unable to connect to a sql server unless I replace the hostname with an ip adress.
I've traced the problem back to sockets.c, line 817:
a.s_addr = (int) (*(host_struct->h_addr_list[0]));
If I replace the code above with the equivalent code used in php3 the problem is solved:
memcpy (&a.s_addr, *(host_struct->h_addr_list), sizeof (a.s_addr));
If you need more information please let me know.
Niels Leenheer
niels@creatype.nl
---------------------------------------------------------------------------
Full Bug description available at: http://bugs.php.net/?id=8856