diff --git a/launcher/src/main.rs b/launcher/src/main.rs index d6bca29..53a80be 100644 --- a/launcher/src/main.rs +++ b/launcher/src/main.rs @@ -1,4 +1,7 @@ -use suppaftp::{NativeTlsFtpStream, NativeTlsConnector}; +use std::fs::File; +use std::io::{Read, Write}; + +use suppaftp::{FtpError, NativeTlsConnector, NativeTlsFtpStream}; use suppaftp::native_tls::{Certificate, TlsConnector, TlsStream}; fn main() { @@ -10,6 +13,13 @@ fn main() { let mut ftp_stream = ftp_stream.into_secure(NativeTlsConnector::from(TlsConnector::builder().add_root_certificate(cert).build().unwrap()), "gitea.piwalker.net").unwrap(); assert!(ftp_stream.login("anonymous", "anonymous@").is_ok()); + let mut file = File::create("test.txt").unwrap(); + let mut buf = Vec::new(); + ftp_stream.retr("modpacks.json", |stream| { + stream.read_to_end(&mut buf).map_err(|e| FtpError::ConnectionError(e)) + }).unwrap(); + file.write_all(buf.as_slice()).unwrap(); + assert!(ftp_stream.quit().is_ok()); }