Expand description
Unified async remote file operations over SMB, FTP, and SFTP.
Backends:
- SMB →
smb2 - FTP →
async-ftp - SFTP →
async-ssh2-tokio(+russh-sftp)
§Quick start
use remote_fs::{Client, FtpConfig, RemoteFileSystem};
let cfg = FtpConfig::new("ftp.example.com", "user", "pass");
let mut client = Client::ftp(&cfg).await?;
let entries = client.list("/").await?;
client.write("/hello.txt", b"hello").await?;
client.disconnect().await?;Structs§
- Client
Builder - Builder for constructing a
Client. - File
Entry - File or directory entry returned by listing.
- File
Meta - Metadata for a remote path.
- FtpClient
- FTP remote file system client (backed by
async-ftp). - FtpConfig
- FTP connection configuration.
- Sftp
Client - SFTP remote file system client (backed by
async-ssh2-tokio+russh-sftp). - Sftp
Config - SFTP connection configuration.
- SmbClient
- SMB remote file system client (backed by
smb2). - SmbConfig
- SMB connection configuration.
Enums§
- Client
- Unified client that dispatches to SMB / FTP / SFTP backends.
- Config
- Generic connection configuration.
- Error
- Unified error type for remote file operations.
- Protocol
- Supported remote protocols.
Traits§
- Remote
File System - Unified async remote file system operations.