Почему метод подключения Net :: SSH2 выдает ошибку «Использование: Net :: SSH2:: тайм-аут (ss, тайм-аут)»?

#perl

#perl

Вопрос:

Я могу подключиться к серверу со своего компьютера через putty, но когда я использую следующий код, время ожидания истекает:

 use warnings;
use strict;

use Net::SSH2;

my $host = "";    # this will be some host ip address

my $ssh2    = Net::SSH2->new();
my $version = $ssh2->version();

print "Version = $versionn";
print "$_n" for @Net::SSH2::ISA;
$ssh2->connect( $host ) or die "Unable to connect to host $@ n";

print "Something1n";

my $stuff = $ssh2->exec( "some command" );

print "Something2n";
print $stuff;

$ssh2->disconnect();
  

Всякий раз, когда я вызываю это, я получаю вывод:

 Version = 1.2.5
Exporter
Usage: Net::SSH2::timeout(ss, timeout) at       C:/Strawberry/perl/site/lib/Net/SSH2.pm line 111.
  

Также,

     perl -MNet::SSH2 -le"print $Net::SSH2::VERSION"
0.62
  

Может кто-нибудь, пожалуйста, сказать мне, что я делаю не так?

Комментарии:

1. Что находится в строке 111?

2. @mistermartin: это в Net::SSH2 модуле. Вы можете посмотреть это на cpan.

3. Пожалуйста, покажите результат print "$_n" for @Net::SSH2::ISA . Спасибо

4. @mistermartin: Строка 111 модуля my $timeout = $self->timeout , поэтому суперкласс Net::SSH2 жалуется, что ему требуется значение тайм-аута, тогда как он должен просто возвращать текущий тайм-аут.

5. Пожалуйста, покажите вывод perl -MNet::SSH2 -le"print $Net::SSH2::VERSION" .