SSH/SFTP client module.
SSH/SFTP client module.
This module uses application SSH
, which provides detailed
information about, for example, functions, types, and options.
Argument Server
in the SFTP functions is only to be used for
SFTP sessions that have been started on existing SSH connections
(that is, when the original connection type is ssh
). Whenever
the connection type is sftp
, use the SSH connection reference
only.
The following options are valid for specifying an SSH/SFTP connection (that is, can be used as configuration elements):
[{ConnType, Addr}, {port, Port}, {user, UserName} {password, Pwd} {user_dir, String} {public_key_alg, PubKeyAlg} {connect_timeout, Timeout} {key_cb, KeyCallbackMod}]
ConnType = ssh | sftp
.
For other types, see
ssh(3)
.
All time-out parameters in ct_ssh
functions are values in
milliseconds.
Data Types
connection() = handle() | target_name()
For target_name
, see module
ct
.
handle() = handle()
Handle for a specific SSH/SFTP connection, see module
ct
.
ssh_sftp_return() = term()
Return value from an
ssh_sftp
function.
Functions
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
Equivalent to
ct_ssh:connect(KeyOrName, host,
[])
.
Equivalent to
ct_ssh:connect(KeyOrName, ConnType,
[])
.
KeyOrName = Key | Name
Key = atom()
Name = target_name()
ConnType = ssh | sftp | host
ExtraOpts = ssh_connect_options()
Handle = handle()
Reason = term()
Opens an SSH or SFTP connection using the information associated
with KeyOrName
.
If Name
(an alias name for Key
) is used to identify
the connection, this name can be used as connection reference for
subsequent calls. Only one open connection at a time associated
with Name
is possible. If Key
is used, the returned
handle must be used for subsequent calls (multiple connections can
be opened using the configuration data specified by Key
).
For information on how to create a new Name
, see
ct:require/2
.
For target_name
, see module
ct
.
ConnType
always overrides the type specified in the
address tuple in the configuration data (and in ExtraOpts
).
So it is possible to, for example, open an SFTP connection
directly using data originally specifying an SSH connection. Value
host
means that the connection type specified by the host
option (either in the configuration data or in ExtraOpts
)
is used.
ExtraOpts
(optional) are extra SSH options to be added to
the configuration data for KeyOrName
. The extra options
override any existing options with the same key in the
configuration data. For details on valid SSH options, see
application SSH
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Reason = term()
Closes an SSH/SFTP connection.
Equivalent to
ct_ssh:exec(SSH, Command,
DefaultTimeout)
.
SSH = connection()
Command = string()
Timeout = integer()
Data = list()
Reason = term()
Requests server to perform Command
. A session channel is
opened automatically for the request. Data
is received from
the server as a result of the command.
SSH = connection()
ChannelId = integer()
Command = string()
Timeout = integer()
Data = list()
Reason = term()
Requests server to perform Command
. A previously opened
session channel is used for the request. Data
is received
from the server as a result of the command.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
Equivalent to
ct_ssh:receive_response(SSH,
ChannelId, close)
.
Equivalent to
ct_ssh:receive_response(SSH,
ChannelId, End, DefaultTimeout)
.
SSH = connection()
ChannelId = integer()
End = Fun | close | timeout
Timeout = integer()
Data = list()
Reason = term()
Receives expected data from server on the specified session channel.
If End == close
, data is returned to the caller when the
channel is closed by the server. If a time-out occurs before this
happens, the function returns {timeout,Data}
(where
Data
is the data received so far).
If End == timeout
, a time-out is expected and
{ok,Data}
is returned both in the case of a time-out and
when the channel is closed.
If End
is a fun, this fun is called with one argument, the
data value in a received ssh_cm
message (see
ssh_connection(3)
.
The fun is to return either true
to end the receiving
operation (and have the so far collected data returned) or
false
to wait for more data from the server. Even if a fun
is supplied, the function returns immediately if the server closes
the channel).
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
Equivalent to ct_ssh:send(SSH,
ChannelId, 0, Data, DefaultTimeout)
.
Equivalent to ct_ssh:send(SSH,
ChannelId, 0, Data, Timeout)
.
SSH = connection()
ChannelId = integer()
Type = integer()
Data = list()
Timeout = integer()
Reason = term()
Sends data to server on specified session channel.
Equivalent to
ct_ssh:send_and_receive(SSH,
ChannelId, Data, close)
.
SSH = connection()
ChannelId = integer()
Type = integer()
Data = list()
End = Fun | close | timeout
Timeout = integer()
Reason = term()
Sends data to server on specified session channel and waits to receive the server response.
For details on argument End
, see
ct_ssh:receive_response/4
.
SSH = connection()
ChannelId = integer()
Reason = term()
Closes an SSH session channel.
Equivalent to
ct_ssh:session_open(SSH,
DefaultTimeout)
.
SSH = connection()
Timeout = integer()
ChannelId = integer()
Reason = term()
Opens a channel for an SSH session.
SSH = connection()
Server = pid()
Reason = term()
Starts an SFTP session on an already existing SSH connection.
Server
identifies the new session and must be specified
whenever SFTP requests are to be sent.
Equivalent to
ct_ssh:shell(SSH, ChannelId,
DefaultTimeout)
.
SSH = connection()
ChannelId = integer()
Timeout = integer()
Reason = term()
Requests that the user default shell (typically defined in
/etc/passwd
in Unix systems) is executed at the
server end.
Equivalent to
ct_ssh:subsystem(SSH, ChannelId,
Subsystem, DefaultTimeout)
.
SSH = connection()
ChannelId = integer()
Subsystem = string()
Timeout = integer()
Status = success | failure
Reason = term()
Sends a request to execute a predefined subsystem.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.
SSH = connection()
Result = ssh_sftp_return() | {error, Reason}
Reason = term()
For information and other types, see
ssh_sftp(3)
.