Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ct_ssh(3)		   Erlang Module Definition		     ct_ssh(3)

NAME
       ct_ssh -	SSH/SFTP client	module.

DESCRIPTION
       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  ses-
       sions 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.

EXPORTS
       apread(SSH, Handle, Position, Length) ->	Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       apread(SSH, Server, Handle, Position, Length) ->	Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       apwrite(SSH, Handle, Position, Data) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       apwrite(SSH, Server, Handle, Position, Data) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       aread(SSH, Handle, Len) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       aread(SSH, Server, Handle, Len) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       awrite(SSH, Handle, Data) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       awrite(SSH, Server, Handle, Data) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       close(SSH, Handle) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       close(SSH, Server, Handle) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       connect(KeyOrName) -> {ok, Handle} | {error, Reason}

	      Equivalent to ct_ssh:connect(KeyOrName, host, []).

       connect(KeyOrName, ConnType) -> {ok, Handle} | {error, Reason}

	      Equivalent to ct_ssh:connect(KeyOrName, ConnType,	[]).

       connect(KeyOrName, ConnType, ExtraOpts) -> {ok, Handle} | {error,  Rea-
       son}

	      Types:

		 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  connec-
	      tion,  this  name	can be used as connection reference for	subse-
	      quent 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 tu-
	      ple in the configuration data (and in ExtraOpts).	So it is  pos-
	      sible  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.

       del_dir(SSH, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       del_dir(SSH, Server, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       delete(SSH, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       delete(SSH, Server, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       disconnect(SSH) -> ok | {error, Reason}

	      Types:

		 SSH = connection()
		 Reason	= term()

	      Closes an	SSH/SFTP connection.

       exec(SSH, Command) -> {ok, Data}	| {error, Reason}

	      Equivalent to ct_ssh:exec(SSH, Command, DefaultTimeout).

       exec(SSH, Command, Timeout) -> {ok, Data} | {error, Reason}

	      Types:

		 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.

       exec(SSH, ChannelId, Command, Timeout) -> {ok, Data} | {error, Reason}

	      Types:

		 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.

       get_file_info(SSH, Handle) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       get_file_info(SSH, Server, Handle) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       list_dir(SSH, Path) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       list_dir(SSH, Server, Path) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       make_dir(SSH, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       make_dir(SSH, Server, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       make_symlink(SSH, Name, Target) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       make_symlink(SSH, Server, Name, Target) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       open(SSH, File, Mode) ->	Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       open(SSH, Server, File, Mode) ->	Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       opendir(SSH, Path) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       opendir(SSH, Server, Path) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       position(SSH, Handle, Location) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       position(SSH, Server, Handle, Location) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       pread(SSH, Handle, Position, Length) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       pread(SSH, Server, Handle, Position, Length) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       pwrite(SSH, Handle, Position, Data) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       pwrite(SSH, Server, Handle, Position, Data) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       read(SSH, Handle, Len) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       read(SSH, Server, Handle, Len) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       read_file(SSH, File) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       read_file(SSH, Server, File) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       read_file_info(SSH, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       read_file_info(SSH, Server, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       read_link(SSH, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       read_link(SSH, Server, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       read_link_info(SSH, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       read_link_info(SSH, Server, Name) -> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       receive_response(SSH, ChannelId)	-> {ok,	Data} |	{error,	Reason}

	      Equivalent to ct_ssh:receive_response(SSH, ChannelId, close).

       receive_response(SSH, ChannelId,	End) ->	{ok, Data} | {error, Reason}

	      Equivalent  to  ct_ssh:receive_response(SSH, ChannelId, End, De-
	      faultTimeout).

       receive_response(SSH, ChannelId,	End, Timeout) -> {ok, Data}  |	{time-
       out, Data} | {error, Reason}

	      Types:

		 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 hap-
	      pens, 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 re-
	      turned 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 func-
	      tion returns immediately if the server closes the	channel).

       rename(SSH, OldName, NewName) ->	Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       rename(SSH, Server, OldName, NewName) ->	Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       send(SSH, ChannelId, Data) -> ok	| {error, Reason}

	      Equivalent to ct_ssh:send(SSH, ChannelId,	0, Data,  DefaultTime-
	      out).

       send(SSH, ChannelId, Data, Timeout) -> ok | {error, Reason}

	      Equivalent to ct_ssh:send(SSH, ChannelId,	0, Data, Timeout).

       send(SSH, ChannelId, Type, Data,	Timeout) -> ok | {error, Reason}

	      Types:

		 SSH = connection()
		 ChannelId = integer()
		 Type =	integer()
		 Data =	list()
		 Timeout = integer()
		 Reason	= term()

	      Sends data to server on specified	session	channel.

       send_and_receive(SSH, ChannelId,	Data) -> {ok, Data} | {error, Reason}

	      Equivalent   to  ct_ssh:send_and_receive(SSH,  ChannelId,	 Data,
	      close).

       send_and_receive(SSH, ChannelId,	Data, End) ->  {ok,  Data}  |  {error,
       Reason}

	      Equivalent  to  ct_ssh;send_and_receive(SSH, ChannelId, 0, Data,
	      End, DefaultTimeout).

       send_and_receive(SSH, ChannelId,	Data, End, Timeout) ->	{ok,  Data}  |
       {error, Reason}

	      Equivalent  to  ct_ssh:send_and_receive(SSH, ChannelId, 0, Data,
	      End, Timeout).

       send_and_receive(SSH, ChannelId,	Type,  Data,  End,  Timeout)  ->  {ok,
       Data} | {error, Reason}

	      Types:

		 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.

       session_close(SSH, ChannelId) ->	ok | {error, Reason}

	      Types:

		 SSH = connection()
		 ChannelId = integer()
		 Reason	= term()

	      Closes an	SSH session channel.

       session_open(SSH) -> {ok, ChannelId} | {error, Reason}

	      Equivalent to ct_ssh:session_open(SSH, DefaultTimeout).

       session_open(SSH, Timeout) -> {ok, ChannelId} | {error, Reason}

	      Types:

		 SSH = connection()
		 Timeout = integer()
		 ChannelId = integer()
		 Reason	= term()

	      Opens a channel for an SSH session.

       sftp_connect(SSH) -> {ok, Server} | {error, Reason}

	      Types:

		 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.

       shell(SSH, ChannelId) ->	ok | {error, Reason}

	      Equivalent to ct_ssh:shell(SSH, ChannelId, DefaultTimeout).

       shell(SSH, ChannelId, Timeout) -> ok | {error, Reason}

	      Types:

		 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.

       subsystem(SSH, ChannelId, Subsystem) -> Status |	{error,	Reason}

	      Equivalent  to  ct_ssh:subsystem(SSH,  ChannelId,	Subsystem, De-
	      faultTimeout).

       subsystem(SSH, ChannelId, Subsystem, Timeout) ->	Status | {error,  Rea-
       son}

	      Types:

		 SSH = connection()
		 ChannelId = integer()
		 Subsystem = string()
		 Timeout = integer()
		 Status	= success | failure
		 Reason	= term()

	      Sends a request to execute a predefined subsystem.

       write(SSH, Handle, Data)	-> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       write(SSH, Server, Handle, Data)	-> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       write_file(SSH, File, Iolist) ->	Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       write_file(SSH, Server, File, Iolist) ->	Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       write_file_info(SSH, Name, Info)	-> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

       write_file_info(SSH, Server, Name, Info)	-> Result

	      Types:

		 SSH = connection()
		 Result	= ssh_sftp_return() | {error, Reason}
		 Reason	= term()

	      For information and other	types, see ssh_sftp(3).

Ericsson AB		       common_test 1.17			     ct_ssh(3)

NAME | DESCRIPTION | DATA TYPES | EXPORTS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=ct_ssh&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help