X-Git-Url: http://git.jankratochvil.net/?p=nethome.git;a=blobdiff_plain;f=bin%2Fcheckhello;h=1998e192232ffc5295746030c95ae690ba5d3923;hp=c6eba95ba57d35c4754c4488f46f884dbee8a53c;hb=6bc94817fca0043c8b7467ca70bc4e9abdfff6a9;hpb=8a47384c9f3098cadea7b18039a8ec4880c013d7 diff --git a/bin/checkhello b/bin/checkhello index c6eba95..1998e19 100755 --- a/bin/checkhello +++ b/bin/checkhello @@ -3,21 +3,25 @@ use strict; use warnings; use IO::Socket::INET6; use Time::HiRes qw(sleep); +use POSIX; @ARGV==5 or die "$0 "; my($hostname,$port,$string,$timeout,$tries)=@ARGV; -for our $try (1..$tries) { - sub ts() { - return localtime()." PID=$$ #$try: "; - } +our $try; +sub ts() { + return localtime()." PID=$$ #$try: "; +} +for $try (1..$tries) { warn ts()."connect($hostname,$port)...\n"; my $sock=IO::Socket::INET6->new( "Proto" =>"tcp", "PeerAddr"=>$hostname, "PeerPort"=>$port, + "Timeout"=>$timeout, ); if (!$sock) { - warn ts()."connect($hostname,$port)=$!"; - sleep $timeout; + my $e=$!+0; + warn ts()."connect($hostname,$port)=$e=$!"; + sleep $timeout if $e!=ETIMEDOUT; next; } warn ts()."connect($hostname,$port): done.\n"; @@ -63,5 +67,6 @@ for our $try (1..$tries) { warn ts()."buf=<$buf>, sleep $remains"; sleep $remains or warn ts()."sleep=$!"; } +$try=$tries; warn ts()."FAIL\n"; print "FAIL\n";