http://qs1969.pair.com?node_id=1138169

mariog has asked for the wisdom of the Perl Monks concerning the following question:

Hello

I want to have a script in perl that is running in windows that test the connection to a ssh server.

If the ssh is up and running I need it to display the version. If ssh timeout I need it say socket timeout after x seconds If the connection is refused. simple display Connection refused.

I have the following bit of code that displays the version but I do not know how to handle the errors (timeout and connection refused

#!C:\Dwimperl\perl\bin\perl use IO::Socket::INET; use strict; use warnings; my $socket = IO::Socket::INET->new( PeerHost => $np->opts->host, PeerPort => $np->opts->port, proto => 'tcp', timeout => 10, ); die "$!\n" unless $socket; $socket->print("\n"); my $output = join '', $socket->getline(); print $output;
also, the timeout is taking more than 10 seconds..so I do not think that is working.