Skip to content

An implementation of TLS/SSL streams for Tokio

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

ragevou/tokio-tls

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tokio-tls

An implementation of TLS/SSL streams for Tokio built on top of the native-tls crate

Build Status Build status

Documentation

Usage

First, add this to your Cargo.toml:

[dependencies]
native-tls = "0.1"
tokio-tls = "0.1"

Next, add this to your crate:

extern crate native_tls;
extern crate tokio_tls;

use tokio_tls::{TlsConnectorExt, TlsAcceptorExt};

You can find an example of using this crate at https://tokio.rs along with a detailed explanation of what's happening.

This crate provides two extension traits, TlsConnectorExt and TlsAcceptorExt, which augment the functionality provided by the native-tls crate. These extension traits provide the ability to connect a stream asynchronously and accept a socket asynchronously. Configuration of TLS parameters is still done through the support in the native-tls crate.

By default the native-tls crate currently uses the "platform appropriate" backend for a TLS implementation. This means:

Typically these selections mean that you don't have to worry about a portability when using TLS, these libraries are all normally installed by default.

Interaction with tokio-proto

If you're working with a protocol that starts out with a TLS negotation on either the client or server side then you can use the proto::Client and proto::Server types in this crate for performing those tasks. To do so, you can update your dependency as such:

[dependencies]
tokio-tls = { version = "0.1", features = ["tokio-proto"] }

License

This project is licensed under either of

at your option.

Contribution

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

About

An implementation of TLS/SSL streams for Tokio

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 100.0%