From 8bf1bd07face1af84fbded1281e4877f28e0e9fa Mon Sep 17 00:00:00 2001 From: Hans Nilsson Date: Thu, 27 Jun 2019 15:17:57 +0200 Subject: ssh: The ssh_sftpd documentation is now generated --- lib/ssh/doc/src/ssh_sftpd.xml | 33 ++++++++++----------------------- lib/ssh/src/ssh_sftpd.erl | 12 +++++++++++- 2 files changed, 21 insertions(+), 24 deletions(-) diff --git a/lib/ssh/doc/src/ssh_sftpd.xml b/lib/ssh/doc/src/ssh_sftpd.xml index ee72784add..0d7b340399 100644 --- a/lib/ssh/doc/src/ssh_sftpd.xml +++ b/lib/ssh/doc/src/ssh_sftpd.xml @@ -35,36 +35,23 @@

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_server_channel (replaces ssh_daemon_channel) behaviour.

- channel_init_args() = -

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

-
-
- subsystem_spec(Options) -> subsystem_spec() + Returns the subsystem specification that allows an SSH daemon to handle the subsystem "sftp". - - Options = [{Option, Value}] -

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

+

The Name is "sftp" and + CbMod is the name of the Erlang module implementing the subsystem using the + ssh_server_channel (replaces ssh_daemon_channel) behaviour. +

Options:

- + cwd

Sets the initial current working directory for the server.

- + file_handler

Determines which module to call for accessing the file server. The default value is ssh_sftpd_file, which uses the @@ -72,13 +59,13 @@ APIs to access the standard OTP file server. This option can be used to plug in other file servers.

- + max_files

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

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, @@ -86,7 +73,7 @@ cd /etc, the user moves to /tmp/etc.

- + sftpd_vsn

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

diff --git a/lib/ssh/src/ssh_sftpd.erl b/lib/ssh/src/ssh_sftpd.erl index 5ec12e2d04..bf921f0ff3 100644 --- a/lib/ssh/src/ssh_sftpd.erl +++ b/lib/ssh/src/ssh_sftpd.erl @@ -58,7 +58,17 @@ %%==================================================================== %% API %%==================================================================== --spec subsystem_spec(list()) -> subsystem_spec(). +-spec subsystem_spec(Options) -> Spec when + Options :: [ {cwd, string()} | + {file_handler, CallbackModule::string()} | + {max_files, integer()} | + {root, string()} | + {sftpd_vsn, integer()} + ], + Spec :: {Name, {CbMod,Options}}, + Name :: string(), + CbMod :: atom() . + subsystem_spec(Options) -> {"sftp", {?MODULE, Options}}. -- cgit v1.2.3