MOON
Server: Apache/2.2.31 (Unix) mod_ssl/2.2.31 OpenSSL/0.9.8e-fips-rhel5 mod_bwlimited/1.4
System: Linux csr818.wilogic.com 2.6.18-419.el5xen #1 SMP Fri Feb 24 22:50:37 UTC 2017 x86_64
User: digitals (531)
PHP: 5.4.45
Disabled: NONE
Upload Files
File: //scripts.20110531.215904.25158/HTTPreq.pm
#!/usr/bin/perl

use Socket;

sub httpreq {
	my($page);
	my($host,$url) = @_;

   eval {
      $SIG{'PIPE'} = $SIG{'ALRM'} = sub {
         print "Unable to retrieve file\n";
         die;
      };
      alarm(30);
      $proto = getprotobyname('tcp');
      socket(Socket_Handle, AF_INET, SOCK_STREAM, $proto);
      $iaddr = inet_aton("$host");
      $port = getservbyname('http', 'tcp');
      $sin = sockaddr_in($port, $iaddr);
      connect(Socket_Handle, $sin);
      send Socket_Handle, "GET $url HTTP/1.0\r\nHost: $host\r\n\r\n",0;
      $inheader = 1;
      while(<Socket_Handle>) {
	alarm(20);
        if (!$inheader) {
		$page .= $_;
         }
	 if ($inheader && (/^HTTP\/\d+\.\d+ (\d+)/)) { if ($1 eq "404" || $1 eq "500" || $1 eq "301") { print "Error $1 while fetching url http://$host/$url\n"; return(); } }
         if ($inheader && (/^\n$/ || /^\r\n$/ || /^$/)) { $inheader = 0; }
      }
      alarm(0);
   };
	return($page);
}

1;