Dr.Ruud wrote:
Gunnar Hjalmarsson wrote:
monnappa appaiah wrote:

This the error i'm getting

Net::SSH2::connect: failed to connect to 10.10.10.1:22: Unknown error at
connect.pl line 21

the line 21 is shown below

 $ssh2->connect($_) or warn "Unable to connect host $_\n" and next;

It's apparent that the fatal error happens inside Net::SSH2, and warn() and next() are not run. The standard solution to this problem is eval():

    eval { $ssh2->connect($_) };
    if ($@) {
        warn "Unable to connect host $_: $@" and next;
    }

That is the "old fashioned" way. You really need to use the return value of eval to make sure.

I don't see anything about that in "perldoc -f eval". Instead it says:

"If there is a syntax error or runtime error, or a die statement is executed, an undefined value is returned by eval, and $@ is set to the error message. If there was no error, $@ is guaranteed to be a null string."

--
Gunnar Hjalmarsson
Email: http://www.gunnar.cc/cgi-bin/contact.pl

--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to