#smtp #mailer #client-connect

yanked amaurymartiny-async-smtp

SMTP client

0.1.0 Apr 14, 2020

#14 in #mailer

Apache-2.0/MIT

115KB
3K SLoC

Fork of async-email/async-smtp

This fork adds:

  • Add .command on SmtpClient (PR#18)
  • Client connect to SOCKS5 stream (PR#19)

The rest of the code is remained untouched. This crate is published under amaurymartiny-async-smtp.


async-smtp

Async implementation of SMTP


Based on the great lettre library.

Example

use async_smtp::{
    ClientSecurity, Envelope, SendableEmail, SmtpClient, Transport,
};

async fn smtp_transport_simple() -> Result<()> {
    let email = SendableEmail::new(
        Envelope::new(
            Some("user@localhost".parse().unwrap()),
            vec!["root@localhost".parse().unwrap()],
        )?,
        "id",
        "Hello world",
    );

    // Create a client
    let smtp = SmtpClient::new("127.0.0.1:2525").await?.into_transport();

    // Connect and send the email.
    smtp.send(email).await?;

    Ok(())
}

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~7–20MB
~271K SLoC