Async TLS for the Tokio runtime
Go to file
Brian Smith 2bf0ba169f Clarify and expand documentation.
Fix the license badges to point to the correct files. Fix some typos.
Add more links. Explain how to run the examples.
2017-03-29 19:11:51 -10:00
examples [Changed] update tokio-io 2017-03-16 10:15:06 +08:00
src Clarify and expand documentation. 2017-03-29 19:11:51 -10:00
.gitignore [Added] init 2017-02-21 11:59:05 +08:00
.gitjournal.toml [Added] init 2017-02-21 11:59:05 +08:00
Cargo.toml [Removed] dont need tokio-core 2017-03-16 10:41:41 +08:00
LICENSE-APACHE [Added] README and more 2017-02-27 21:02:35 +08:00
LICENSE-MIT [Added] README and more 2017-02-27 21:02:35 +08:00
README.md Clarify and expand documentation. 2017-03-29 19:11:51 -10:00

tokio-rustls

crates license license docs.rs

Asynchronous TLS/SSL streams for Tokio using Rustls.

Basic Structure of a Client

// ...

use rustls::ClientConfig;
use tokio_rustls::ClientConfigExt;

let mut config = ClientConfig::new();
config.root_store.add_trust_anchors(&webpki_roots::ROOTS);
let config = Arc::new(config);

TcpStream::connect(&addr, &handle)
	.and_then(|socket| config.connect_async("www.rust-lang.org", socket))

// ...

Client Example Program

See examples/client.rs. You can run it with:

cargo run --example client google.com

Server Example Program

See examples/server.rs. You can run it with:

cargo run --example server -- 127.0.0.1 --cert mycert.der --key mykey.der

License & Origin

tokio-rustls is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0), with portions covered by various BSD-like licenses.

This started as a fork of tokio-tls.