Expand description

This crate provides a set of APIs to access the remote filesystem using the sftp protocol and is implemented in pure Rust.

It supports sending multiple requests concurrently using WriteEnd (it can be cloned), however receiving responses have to be done sequentially using ReadEnd::read_in_one_packet.

To create WriteEnd and ReadEnd, simply pass the stdin and stdout of the sftp-server launched at remote to connect.

This crate supports all operations supported by sftp v3, in additional to the following extensions:

Structs

The extension that the sftp-server supports.

Payload of extended reply response when crate::request::RequestInner::Limits is sent.

Default value is 1970-01-01 00:00:00 UTC.

It is recommended to create at most one WriteEnd per thread using WriteEnd::clone.

Enums

Buffer that can be used to write data into.

Constants

Default size of buffer for up/download in openssh-portable

Default length of download buffer in openssh-portable

Default number of concurrent outstanding requests in openssh-portable

Default length of upload buffer in openssh-portable

Maximum depth to descend in directory trees in openssh-portable

Minimum amount of data to read at a time in openssh-portable

Traits

Any type that can act as a buffer.

Functions

Initialize connection to remote sftp server and negotiate the sftp version.

Type Definitions