The following module was proposed for inclusion in the Module List:

  modid:       Control::CLI
  DSLIP:       RdpOp
  description: Command Line Interface via ssh/telnet/serial
  userid:      LSTEVENS (Ludovico Stevens)
  chapterid:   5 (Networking_Devices_IPC)
  communities:

  similar:
    Net::Telnet, Net::SSH2, Win32::SerialPort, Device::SerialPort

  rationale:

    A Command Line Interface (CLI) is an interface where the user is
    presented with a command prompt and has to enter ASCII commands to
    drive or control or configure that device. That interface could be
    the shell on a Unix system or some other command interpreter on a
    device such as an ethernet switch or an IP router or some kind of
    security appliance. This module is useful to control/automate/script
    a remote device by interacting with its CLI interface remotely over
    any type of connection which can be used to reach the CLI interface
    of that remote device. Control::CLI supports any of Telnet, SSHv2
    (using an interactive shell channel) and Serial Port connections.

    Much of the functionality of this module is in fact similar (and in
    some cases identical) to that offered by the popular Net::Telnet
    module. The real benefit of this module is that connection and basic
    I/O can be performed in a consistent manner regardless of the
    underlying connection type thus allowing CLI based scripts to be
    easily converted between or operate over any of Telnet, SSH or
    Serial port connection.

    To do so, Control::CLI relies on these underlying modules:

    Net::Telnet for Telnet access Net::SSH2 for SSH access
    Win32::SerialPort or Device::SerialPort for Serial port access
    respectively on Windows and Unix systems

    Since all of the above are Perl standalone modules (which do not
    need to rely on external binaries) scripts using Control::CLI can
    easily be ported to any OS platform (where either Perl is installed
    or by simply packaging the Perl script into an executable with
    PAR::Packer's pp). In particular this is a big advantage for
    portability to Windows platforms where using Expect scripts is
    usually not possible.

    Note that Net::SSH2 only supports SSHv2 and this class will always
    and only use Net::SSH2 to establish a channel over which an
    interactive shell is established with the remote host. This is
    typically the only way that SSH is implemented on ethernet switches
    and IP routers and other appliances. Both password and publickey
    authentication are supported.

    Each of the above modules is optional (they are not required to
    install Control::CLI), however if one of the modules is missing then
    no access of that type will be available. For instance if
    Win32::SerialPort is not installed (on a Windows system) but both
    Net::Telnet and Net::SSH2 are, then Control::CLI will be able to
    operate over both Telnet and SSH, but not Serial port. There has to
    be, however, at least one of the above modules installed, otherwise
    Control::CLI's constructor will throw an error.

  enteredby:   LSTEVENS (Ludovico Stevens)
  enteredon:   Fri Jan  4 09:40:10 2013 GMT

The resulting entry would be:

Control::
::CLI             RdpOp Command Line Interface via ssh/telnet/serial LSTEVENS


Thanks for registering,
-- 
The PAUSE

PS: The following links are only valid for module list maintainers:

Registration form with editing capabilities:
  
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=1e800000_af63c268707ef089&SUBMIT_pause99_add_mod_preview=1
Immediate (one click) registration:
  
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=1e800000_af63c268707ef089&SUBMIT_pause99_add_mod_insertit=1
Peek at the current permissions:
  
https://pause.perl.org/pause/authenquery?pause99_peek_perms_by=me&pause99_peek_perms_query=Control%3A%3ACLI

Reply via email to