4个版本

使用旧Rust 2015

0.2.0 2017年7月22日
0.1.2 2017年7月3日
0.1.1 2016年11月5日
0.1.0 2016年10月29日

#14 in #ftp-server

30 每月下载量
用于flep

MIT许可证

42KB
1K SLoC

flep

Crates.io Build Status license

FTP服务器库。

文档

示例

运行ftp 127.0.0.1 2222连接到服务器。

pub struct Server
{
    file_system: flep::fs::Memory,
}

impl flep::server::Server for Server
{
    fn welcome_message(&self) -> String { "Hello there!".to_string() }

    fn file_system(&self) -> &flep::fs::FileSystem {
        &self.file_system
    }

    fn file_system_mut(&mut self) -> &mut flep::fs::FileSystem {
        &mut self.file_system
    }
}

fn main() {
    flep::util::log::initialize_default().expect("could not setup logging");

    // Set up an in-memory file system.
    let mut file_system = flep::fs::Memory::new();
    file_system.write_file(&Path::new("README.txt"),
                           "hello there\nit is me".as_bytes().to_owned()).unwrap();

    // Start on port 2222
    let mut server = Server { file_system: file_system };
    flep::server::run(&mut server, "127.0.0.1:2222")
        .expect("error whilst running server");
}

lib.rs:

原始FTP协议定义。

依赖项

~3–4MB
~84K SLoC