diff options
-rwxr-xr-x | ext/Socket/Socket.t | 11 | ||||
-rw-r--r-- | pod/perlfunc.pod | 4 | ||||
-rw-r--r-- | pod/perlport.pod | 5 |
3 files changed, 15 insertions, 5 deletions
diff --git a/ext/Socket/Socket.t b/ext/Socket/Socket.t index c06b9e7a84..a5ad2644e0 100755 --- a/ext/Socket/Socket.t +++ b/ext/Socket/Socket.t @@ -26,8 +26,11 @@ if (socket(T,PF_INET,SOCK_STREAM,6)) { print "ok 1\n"; arm(5); - my $host = $^O eq 'MacOS' ? '127.0.0.1' : 'localhost'; - if ($has_echo && connect(T,pack_sockaddr_in(7,inet_aton($host)))){ + my $host = $^O eq 'MacOS' || ($^O eq 'irix' && $Config{osvers} == 5) ? + '127.0.0.1' : 'localhost'; + my $localhost = inet_aton($host); + + if ($has_echo && defined $localhost && connect(T,pack_sockaddr_in(7,$localhost))){ arm(0); print "ok 2\n"; @@ -53,7 +56,9 @@ if (socket(T,PF_INET,SOCK_STREAM,6)) { } else { print "# You're allowed to fail tests 2 and 3 if\n"; - print "# the echo service has been disabled.\n"; + print "# the echo service has been disabled or if your + print "# gethostbyname() cannot resolve your localhost.\n"; + print "# 'Connection refused' indicates disabled echo service.\n"; print "# 'Interrupted system call' indicates a hanging echo service.\n"; print "# Error: $!\n"; print "ok 2 - skipped\n"; diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod index 353e4e6635..d3eb002d2e 100644 --- a/pod/perlfunc.pod +++ b/pod/perlfunc.pod @@ -224,8 +224,8 @@ by this are: C<-X>, C<binmode>, C<chmod>, C<chown>, C<chroot>, C<crypt>, C<dbmclose>, C<dbmopen>, C<dump>, C<endgrent>, C<endhostent>, C<endnetent>, C<endprotoent>, C<endpwent>, C<endservent>, C<exec>, -C<fcntl>, C<flock>, C<fork>, C<getgrent>, C<getgrgid>, C<gethostent>, -C<getlogin>, C<getnetbyaddr>, C<getnetbyname>, C<getnetent>, +C<fcntl>, C<flock>, C<fork>, C<getgrent>, C<getgrgid>, C<gethostbyname>, +C<gethostent>, C<getlogin>, C<getnetbyaddr>, C<getnetbyname>, C<getnetent>, C<getppid>, C<getprgp>, C<getpriority>, C<getprotobynumber>, C<getprotoent>, C<getpwent>, C<getpwnam>, C<getpwuid>, C<getservbyport>, C<getservent>, C<getsockopt>, C<glob>, C<ioctl>, diff --git a/pod/perlport.pod b/pod/perlport.pod index d74c0da306..b6aca781de 100644 --- a/pod/perlport.pod +++ b/pod/perlport.pod @@ -1636,6 +1636,11 @@ Not implemented. (S<Mac OS>, Win32, VM/ESA) Not implemented. (S<Mac OS>, Win32, VMS, VM/ESA) +=item gethostbyname + +C<gethostbyname('localhost')> does not work everywhere: you may have +to use C<gethostbyname('127.0.0.1')>. (S<Mac OS>, S<Irix 5>) + =item gethostent Not implemented. (S<Mac OS>, Win32) |