NAME
Net::CLI::Interact::Transport::Net_OpenSSH - Net::OpenSSH based CLI connection
DESCRIPTION
This module provides a wrapped instance of a Net::OpenSSH SSH client object for use by Net::CLI::Interact.
This allows one to combine the capability of Net::CLI::Interact to talk to remote servers for which Net::OpenSSH one-command-per-session approach is not well suited (i.e. network equipment running custom administration shells) and still use the capability of Net::OpenSSH to run several sessions over one single SSH connection, including accessing SCP and SFTP services.
Note that this transport is not supported on Windows as Net::OpenSSH is not supported there either.
INTERFACE
app_and_runtime_options
Based on the connect_options
hash provided to Net::CLI::Interact on construction, selects and formats the command and arguments required to run the SSH session over the Net::OpenSSH connection.
Under the hood, this method just wraps Net::OpenSSH make_remote_command
method.
Supported attributes:
- master
-
Reference to the Net::OpenSSH object wrapping the SSH master connection.
- opts
-
Optional hash of extra options to be forwarded to Net::OpenSSH
make_remote_command
method. - shell_cmd
-
Remote command to start the shell. Can be a single string or an array reference.
The default is to pass nothing which on conforming SSH implementations starts the shell configured for the user.
Examples:
# interact with default user shell: $s->new({ # ...other parameters to new()... connect_options => { master => $ssh }, }); # interact with csh: $s->new({ # ...other parameters to new()... connect_options => { master => $ssh, shell_cmd => ['csh', '-i'], }, });
- reap
-
Only used on Unix platforms, this installs a signal handler which attempts to reap the
ssh
child process. Pass a true value to enable this feature only if you notice zombie processes are being left behind after use.
COMPOSITION
See the following for further interface details:
AUTHORS
Oliver Gorwits <oliver@cpan.org> Salvador Fandiño <sfandino@yahoo.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Oliver Gorwits. This software is copyright (c) 2014 by Salvador Fandiño.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.