Subject: Re: Mirror.php

From: "Dave Page" <[email-masked]>
Date: Sat, 4 Dec 2004 13:31:45 -0000

> -----Original Message-----
> From: Alexey Borzov [mailto:[email-masked]] 
> Sent: 04 December 2004 11:19
> To: Dave Page
> Cc: [email-masked]
> Subject: Re: Mirror.php
> 
> I think the script cannot open a socket to 
> wwwmaster.postgresql.org. I am not quite sure why, but 
> googling for this error message brought up several pages on 
> incorrectly setup IPv6. That's your box, so only you can 
> probably know in which particular way it is misconfigured.

My box, your code! :-) I saw you wrote the Pear modules as well. Anyway,
I noticed the ipv6 stuff as well, but IPv6 is not even installed on that
box. It's not included as a kernel module or compiled in.

I hacked up the following test programs:

  $fp = fopen("http://wwwmaster.postgresql.org/", "r");
  while (!feof($fp))
  {
      echo fgets($fp, 500);
  }
  fclose($fp);

And

  $fp = fsockopen("wwwmaster.postgresql.org", 80);
  $out = "GET / HTTP/1.1\r\n";
  $out .= "Host: wwwmaster.postgresql.org\r\n";
  $out .= "Connection: Close\r\n\r\n";

  fwrite($fp, $out);
  while (!feof($fp)) {
     echo fgets($fp, 128);
  }
  fclose($fp);

Both of which work exactly as expected on wwwmaster, which is fairly
conclusive that the ipv4 sockets and http code in fopen are working fine
- so, any idea what it is that the Pear code might be doing that is
throwing this error? If we can figure that out, I stand more of a chance
of solving the problem :-)

Regards, Dave.

---

From: Alexey Borzov <[email-masked]>
Date: Sat, 04 Dec 2004 21:35:07 +0300

Hi,

> of solving the problem :-)

::scratches head::
Well, the PEAR code boils down to the example above if you strip all the pretty 
stuff out. Please try running the following script, maybe it will give some insight:

<?php
error_reporting(E_ALL);
var_dump(gethostbyname('wwwmaster.postgresql.org'));

require_once 'HTTP/Request.php';
PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'var_dump');
$req =& new HTTP_Request('http://wwwmaster.postgresql.org/');
$req->sendRequest();
?>