User's Guide
Reference Manual
Release Notes
PDF
Top

SSH
Reference Manual
Version 4.2

Expand All
Contract All

Table of Contents

- SSH (App)
- ssh
  - Top of manual page
  - close/1
  - connect/3
  - connect/4
  - connection_info/2
  - daemon/1
  - daemon/2
  - daemon/3
  - default_algorithms/0
  - shell/1
  - shell/2
  - shell/3
  - start/0
  - start/1
  - stop/0
  - stop_daemon/1
  - stop_daemon/2
  - stop_listener/1
  - stop_listener/2
- ssh_channel
  - Top of manual page
  - call/2
  - call/3
  - cast/2
  - enter_loop/1
  - init/1
  - reply/2
  - start/4
  - start_link/4
  - Module:code_change/3
  - Module:init/1
  - Module:handle_call/3
  - Module:handle_cast/2
  - Module:handle_msg/2
  - Module:handle_ssh_msg/2
  - Module:terminate/2
- ssh_connection
  - Top of manual page
  - adjust_window/3
  - close/2
  - exec/4
  - exit_status/3
  - ptty_alloc/3
  - ptty_alloc/4
  - reply_request/4
  - send/3
  - send/4
  - send/4
  - send/5
  - send_eof/2
  - session_channel/2
  - session_channel/4
  - setenv/5
  - shell/2
  - subsystem/4
- ssh_client_key_api
  - Top of manual page
  - Module:add_host_key/3
  - Module:is_host_key/4
  - Module:user_key/2
- ssh_server_key_api
  - Top of manual page
  - Module:host_key/2
  - Module:is_auth_key/3
- ssh_sftp
  - Top of manual page
  - apread/4
  - apwrite/4
  - aread/3
  - awrite/3
  - close/2
  - close/3
  - delete/2
  - delete/3
  - del_dir/2
  - del_dir/3
  - list_dir/2
  - list_dir/3
  - make_dir/2
  - make_dir/3
  - make_symlink/3
  - make_symlink/4
  - open/3
  - open/4
  - opendir/2
  - opendir/3
  - open_tar/3
  - open_tar/4
  - position/3
  - position/4
  - pread/4
  - pread/5
  - pwrite/4
  - pwrite/5
  - read/3
  - read/4
  - read_file/2
  - read_file/3
  - read_file_info/2
  - read_file_info/3
  - read_link/2
  - read_link/3
  - read_link_info/2
  - read_link_info/3
  - rename/3
  - rename/4
  - start_channel/1
  - start_channel/2
  - start_channel/2
  - start_channel/3
  - stop_channel/1
  - write/3
  - write/4
  - write_file/3
  - write_file/4
  - write_file_info/3
  - write_file_info/4
- ssh_sftpd
  - Top of manual page
  - subsystem_spec/1

# ssh_sftpd

### MODULE

ssh_sftpd

### MODULE SUMMARY

Specifies the channel process to handle an SFTP subsystem.

### DESCRIPTION

Specifies a channel process to handle an SFTP subsystem.

### DATA TYPES

subsystem_spec() =

  {subsystem_name(), {channel_callback(), channel_init_args()}}

subsystem_name() =

  "sftp"

channel_callback() =

  atom() - Name of the Erlang module implementing the subsystem using the ssh_channel behavior, see the ssh_channel(3) manual page.

channel_init_args() =

  list() - The one given as argument to function subsystem_spec/1.

### EXPORTS

subsystem_spec(Options) -> subsystem_spec()

Types:

Options = [{Option, Value}]

Is to be used together with ssh:daemon/[1,2,3]

Options:

{cwd, String}

  Sets the initial current working directory for the server.

{file_handler, CallbackModule}

  Determines which module to call for accessing the file server. The default value is ssh_sftpd_file, which uses the file and filelib APIs to access the standard OTP file server. This option can be used to plug in other file servers.

{max_files, Integer}

  The default value is 0, which means that there is no upper limit. If supplied, the number of filenames returned to the SFTP client per READDIR request is limited to at most the given value.

{root, String}

  Sets the SFTP root directory. Then the user cannot see any files above this root. If, for example, the root directory is set to /tmp, then the user sees this directory as /. If the user then writes cd /etc, the user moves to /tmp/etc.

{sftpd_vsn, integer()}

  Sets the SFTP version to use. Defaults to 5. Version 6 is under development and limited.