From 1a3f1bdd7af1e80a22a3ac957229a3cd7ce44596 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s?= Date: Fri, 11 Feb 2022 13:56:19 +0100 Subject: [PATCH] Fix error when tryin to use telnet with ssh parameters. Net::Telnet - bad parameter "-o" --- lib/Netdot/Model/Device/CLI.pm | 35 ++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/lib/Netdot/Model/Device/CLI.pm b/lib/Netdot/Model/Device/CLI.pm index 1ea1205cc..04d5c5c42 100644 --- a/lib/Netdot/Model/Device/CLI.pm +++ b/lib/Netdot/Model/Device/CLI.pm @@ -84,18 +84,29 @@ sub _cli_cmd { $personality ||= 'ios'; - my %sess_args = ( - host => $host, - transport => $transport, - personality => $personality, - connect_options => { - shkc => 0, - opts => [ - '-o', "ConnectTimeout=$timeout", - '-o', 'CheckHostIP=no', - ], - }, - ); + my %sess_args; + + if ( $transport eq 'SSH' ) { + %sess_args = ( + host => $host, + transport => $transport, + personality => $personality, + connect_options => { + shkc => 0, + opts => [ + '-o', "ConnectTimeout=$timeout", + '-o', 'CheckHostIP=no', + ], + }, + ); + } else { #This must be Telnet + %sess_args = ( + host => $host, + transport => $transport, + personality => $personality, + timeout => $timeout + ); + } # this is broken for some reason. Need to debug # $sess_args{privileged_paging} = 1 if ($personality eq 'pixos');