Module: MallCop
- Defined in:
- lib/mallcop.rb,
lib/mallcop/shell.rb,
lib/mallcop/channel.rb,
lib/mallcop/session.rb,
ext/mallcop/mallcop.c
Defined Under Namespace
Classes: Channel, ChannelError, ConnectionError, RuntimeError, Session, SessionError, Shell
Constant Summary collapse
- VERSION =
'1.0.0'
- ERROR_ALLOC =
INT2FIX(LIBSSH2_ERROR_ALLOC)
- ERROR_BANNER_SEND =
INT2FIX(LIBSSH2_ERROR_BANNER_SEND)
- ERROR_CHANNEL_FAILURE =
INT2FIX(LIBSSH2_ERROR_CHANNEL_FAILURE)
- ERROR_EAGAIN =
INT2FIX(LIBSSH2_ERROR_EAGAIN)
- ERROR_KEX_FAILURE =
INT2FIX(LIBSSH2_ERROR_KEX_FAILURE)
- ERROR_SOCKET_DISCONNECT =
INT2FIX(LIBSSH2_ERROR_SOCKET_DISCONNECT)
- ERROR_SOCKET_NONE =
INT2FIX(LIBSSH2_ERROR_SOCKET_NONE)
- ERROR_SOCKET_SEND =
INT2FIX(LIBSSH2_ERROR_SOCKET_SEND)
- ERROR_PROTO =
INT2FIX(LIBSSH2_ERROR_PROTO)
- HASH_SHA1 =
INT2FIX(LIBSSH2_HOSTKEY_HASH_SHA1)
Class Method Summary collapse
-
.connect(host, username, options = {}) ⇒ Object
Establishes a connection to the SSH server.
- .shell(host, username, options = {}) ⇒ Object
Class Method Details
.connect(host, username, options = {}) ⇒ Object
Establishes a connection to the SSH server.
Arguments
host
The host to connect to username
The username to connect under.
Optional: options
:port The port to connect on (defaults to 22)
:password Use a password based authentication strategy.
26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/mallcop.rb', line 26 def self.connect(host, username, = {}) session = Session.start(host, [:port] || 22) unless session.authenticate username, raise ChannelError, "Could not authenticate user '#{username}'" end if block_given? yield session session.disconnect("Closing session") end session end |