Hi
I'm trying to write a simple ssh login script using Net::SSH::Perl. with regular password It's working without a problem, but when I try to use dsa key (my usual dsa key) it doesn't work.
here's the scritp:
----------------------------------------------------
#!/usr/bin/perl -w
use strict; use Net::SSH::Perl; use Net::SSH::Perl::Auth;
my @ids = ("/home/haim/.ssh/identity");
my %params = { protocol => 2, interactive => 1, identity_files => [EMAIL PROTECTED], };
Right here you are assigning a hash reference to a hash, which is essentially setting a key using the reference location with a value as undef. Then you pass the hash to the new constructor and it sees a single value which is why you are getting there warning/error about "Reference found where even sized list expected"... Switch the braces in the above construct to parenthesis and it should work, or switch the hash to a hash dereference below and the hash to a scalar above.
my $login = Net::SSH::Perl->new("coltrane", %params);
my $auth = Net::SSH::Perl::Auth->new('PublicKey', $login); $auth->authenticate;
$login->login("haim");
$login->shell;
--------------------------------------------------------------------------------
When I run this script I get an error: Reference found where even-sized list expected at login.pl line 10. Can't call method "agent" on an undefined value at /usr/local/share perl/5.8.0/Net/SSH/Perl/Auth/PublicKey.pm line 39, <GEN0> line 1.
I've looked into the Net::SSH::Perl::Agent manpage but I can't figure out how do I use it.
can anyone please help?
HTH,
http://danconia.org
-- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]