View Source ct_ftp (common_test v1.27.3)
FTP client module (based on the ftp
application).
Summary
Types
Reference to opened FTP connection associated to either a handle
or target_name
.
Functions
Changes directory on remote host.
Closes the FTP connection.
Deletes a file on remote host.
Opens an FTP connection and fetches a file from the remote host.
Lists directory Dir
.
Opens an FTP connection to the specified node.
Opens an FTP connection and sends a file to the remote host.
Fetches a file over FTP.
Fetches a file over FTP.
Sends a file over FTP.
Sends a file over FTP.
Changes the file transfer type.
Types
-type connection() :: handle() | ct:target_name().
Reference to opened FTP connection associated to either a handle
or target_name
.
-type handle() :: ct:handle().
Handle for a specific FTP connection, see module ct
.
Functions
-spec cd(Connection, Dir) -> ok | {error, Reason} when Connection :: connection(), Dir :: file:filename(), Reason :: term().
Changes directory on remote host.
-spec close(Connection) -> ok | {error, Reason} when Connection :: connection(), Reason :: term().
Closes the FTP connection.
-spec delete(Connection, File) -> ok | {error, Reason} when Connection :: connection(), File :: file:filename(), Reason :: term().
Deletes a file on remote host.
-spec get(KeyOrName, RemoteFile, LocalFile) -> ok | {error, Reason} when KeyOrName :: ct:key_or_name(), RemoteFile :: file:filename(), LocalFile :: file:filename(), Reason :: term().
Opens an FTP connection and fetches a file from the remote host.
RemoteFile
and LocalFile
must be absolute paths.
The configuration file must be as for ct_ftp:put/3
.
See also ct:require/2
.
-spec ls(Connection, Dir) -> {ok, Listing} | {error, Reason} when Connection :: connection(), Dir :: file:filename(), Listing :: string(), Reason :: term().
Lists directory Dir
.
-spec open(KeyOrName) -> {ok, Handle} | {error, Reason} when KeyOrName :: ct:key_or_name(), Handle :: handle(), Reason :: term().
Opens an FTP connection to the specified node.
You can open a connection for a particular Name
and use the same name as
reference for all following subsequent operations. If you want the connection to
be associated with Handle
instead (if you, for example, need to open multiple
connections to a host), use Key
, the configuration variable name, to specify
the target. A connection without an associated target name can only be closed
with the handle value.
For information on how to create a new Name
, see ct:require/2
.
-spec put(KeyOrName, LocalFile, RemoteFile) -> ok | {error, Reason} when KeyOrName :: ct:key_or_name(), LocalFile :: file:filename(), RemoteFile :: file:filename(), Reason :: term().
Opens an FTP connection and sends a file to the remote host.
LocalFile
and RemoteFile
must be absolute paths.
If the target host is a "special" node, the FTP address must be specified in the configuration file as follows:
{node,[{ftp,IpAddr}]}.
If the target host is something else, for example, a UNIX host, the configuration file must also include the username and password (both strings):
{unix,[{ftp,IpAddr},
{username,Username},
{password,Password}]}.
See also ct:require/2
.
-spec recv(Connection, RemoteFile) -> ok | {error, Reason} when Connection :: connection(), RemoteFile :: file:filename(), Reason :: term().
Fetches a file over FTP.
The file gets the same name on the local host.
See also ct_ftp:recv/3
.
-spec recv(Connection, RemoteFile, LocalFile) -> ok | {error, Reason} when Connection :: connection(), RemoteFile :: file:filename(), LocalFile :: file:filename(), Reason :: term().
Fetches a file over FTP.
The file is named LocalFile
on the local host.
-spec send(Connection, LocalFile) -> ok | {error, Reason} when Connection :: connection(), LocalFile :: file:filename(), Reason :: term().
Sends a file over FTP.
The file gets the same name on the remote host.
See also ct_ftp:send/3
.
-spec send(Connection, LocalFile, RemoteFile) -> ok | {error, Reason} when Connection :: connection(), LocalFile :: file:filename(), RemoteFile :: file:filename(), Reason :: term().
Sends a file over FTP.
The file is named RemoteFile
on the remote host.
-spec type(Connection, Type) -> ok | {error, Reason} when Connection :: connection(), Type :: ascii | binary, Reason :: term().
Changes the file transfer type.