=================================================================== RCS file: /cvs/trango/Net-Telnet-Trango/lib/Net/Telnet/Trango.pm,v retrieving revision 1.29 retrieving revision 1.33 diff -u -r1.29 -r1.33 --- trango/Net-Telnet-Trango/lib/Net/Telnet/Trango.pm 2007/02/01 17:58:33 1.29 +++ trango/Net-Telnet-Trango/lib/Net/Telnet/Trango.pm 2007/02/02 21:26:56 1.33 @@ -1,5 +1,5 @@ package Net::Telnet::Trango; -# $RedRiver: Trango.pm,v 1.28 2007/02/01 17:10:07 mike Exp $ +# $RedRiver: Trango.pm,v 1.32 2007/02/02 18:59:50 andrew Exp $ use strict; use warnings; use base 'Net::Telnet'; @@ -329,6 +329,12 @@ $t->su_info($suid); +=item B + +- tests the RF Link to an su + + $t->su_testrflink($suid|'all'); + =item B - saves the config. @@ -355,6 +361,7 @@ maclist_reset => { String => 'maclist reset', expect => 'done' }, eth_link => { String => 'eth link', expect => $success }, su_info => { String => 'su info', decode => 'all', expect => $success }, + su_testrflink => { String => 'su testrflink', decode => 'each', expect => $success }, save_ss => { String => 'save ss', expect => $success }, opmode => { decode => 'all', expect => $success }, # eth r, w and reset??? @@ -396,9 +403,13 @@ } if (exists $COMMANDS{$method}) { - $COMMANDS{$method}{'String'} ||= $method; - $COMMANDS{$method}{'args'} .= ' ' . shift if (@_ == 1); - return $self->cmd(%{ $COMMANDS{$method} }, @_); + my %cmd; + foreach my $k (keys %{ $COMMANDS{$method} }) { + $cmd{$k} = $COMMANDS{$method}{$k}; + } + $cmd{'String'} ||= $method; + $cmd{'args'} .= ' ' . shift if (@_ == 1); + return $self->cmd(%cmd, @_); } if (exists $ACCESS{$method}) { @@ -810,7 +821,7 @@ my $vals = $self->tftpd( args => 'on' ); - if ($vals->{'Tftpd'} eq 'listen') { + if (ref $vals eq 'HASH' && $vals->{'Tftpd'} eq 'listen') { return $vals; } else { return; @@ -938,12 +949,13 @@ if ($cfg{'args'}) { $cmd{'String'} .= ' ' . $cfg{'args'}; } + my @lines; - unless ($cfg{'no_prompt'}) { - @lines = $self->SUPER::cmd(%cmd); - } else { + if ($cfg{'no_prompt'}) { $self->print($cmd{'String'}); @lines = $self->lastline; + } else { + @lines = $self->SUPER::cmd(%cmd); } $self->last_lines(\@lines);