Hi,
My program connects to a remote machine as following:
my $ssh;
foreach (1..3) {
eval {
$ssh = Net::SSH::Expect->new(
host => $host,
password => $password,
user => $user,
raw_pty => 1,
timeout => 3,
binary => $ssh_exec,
);
};
last if $ssh;
sleep 1;
}
die "Could not connect to remote host '$host'\n" if not $ssh;
my $login_output = $ssh->login;
If the user entered the wrong username and/or password, I'd like to alert this without getting :
SSHConnectionAborted at test.pl line 779.
I've tried checkig the login_output , wrapping it with 'eval', catching before/after, with no success.
The weird thing is that the line where it aborts is after the login:
$ssh->exec("stty raw -echo");
my $resp_uname = $ssh->exec('uname'); #This is line 779
Any ideas?