Bug #11058 Updated: php_network_getaddresses: getaddrinfo failed
| From: | venaas@php.net | Date: | Sun, 22 Jul 2001 08:45:41 +0000 |
| Subject: | Bug #11058 Updated: php_network_getaddresses: getaddrinfo failed | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-60567@lists.php.net to get a copy of this message | ||
ID: 11058
Updated by: venaas
Reported By: pat@mail.rit.edu
Status: Open
Bug Type: HTTP related
Operating System: OpenBSD 2.6
PHP Version: 4.0.5
New Comment:
Could you try to comment out the line
#define HAVE_GETADDRINFO 1
in main/php_config.h and rebuild without doing configure?
Does it work then? There are some broken getaddrinfo()
implementations out there, but I would be surprised if
there were problems with OpenBSD in general. Might be
something wrong with your resolver library.
OTH, you also have a problem with fsockopen() and that
uses the old gethostbyname() I think, so it seems to be resolving in general.
Previous Comments:
------------------------------------------------------------------------
[2001-07-21 21:47:35] andy@php.net
Please check that your nameserver is running and setup
correctly. Check the same with your internet server.
------------------------------------------------------------------------
[2001-05-23 11:58:00] pat@mail.rit.edu
I've seen this issue posted here a few times, and I think my problem is similar to Bug id
#7880.
fopen(), fsockopen(), and file() will not work with URL or IP address parameters. include() has the
same issue. I believe it has something to do with getaddrinfo.
Before upgrading to PHP4, I was running 3.0.16 and all of these functions were working perfectly
with URL parameters.
My configure script looks like this:
./configure --with-apache=/usr/temp/apache_1.3.19 --with-mysql=/usr/local --enable-track-vars
--with-xml --with-openssl=/usr/local/ssl
My php.ini DOES contain the line "allow_url_fopen = On"
The fopen() script looks like this:
$fd = fopen( "http://www.php.net/",
"r" );
if( !$fd )
{
echo "Cannot open URL";
} else {
while ( !feof( $fd ) ) {
$buffer = fgets( $fd, 4096 );
echo $buffer;
}
fclose ( $fd );
}
and produces this output:
Warning: php_network_getaddresses: getaddrinfo failed: name or service is not known in
/var/www/patrickhaney.com/www/weather/test.php on line 24
Warning: fopen("http://www.php.net/","r") - Bad
file descriptor in /var/www/patrickhaney.com/www/weather/test.php on line 24
Cannot open URL
and yes, I can resolve php.net to 208.247.106.187. Using the IP address in place of the hostname
produces the same output.
If I use the fsockopen() function with this script:
fsockopen("http://www.php.net/", 80,
&$errno, &$errstr, 30);
if(!$fp) {
echo "Error: $errstr ($errno)<br>\n";
} else {
fputs($fp,"GET / HTTP/1.0\n\n");
while(!feof($fp)) {
echo fgets($fp,128);
}
fclose($fp);
}
I get this output:
Error: (0)
------------------------------------------------------------------------
Edit this bug report at http://bugs.php.net/?id=11058&edit=1