Crates.io | async-tls-acceptor |
lib.rs | async-tls-acceptor |
version | 0.1.0 |
source | src |
created_at | 2021-04-30 21:18:50.561041 |
updated_at | 2021-04-30 21:18:50.561041 |
description | a trait for tls acceptors |
homepage | |
repository | https://github.com/trillium-rs/async-tls-acceptor |
max_upload_size | |
id | 391716 |
size | 15,649 |
This crate provides a common interface for server-side tls acceptors, abstracting over various implementations.
The only implementation provided by this crate is ()
, which is a
noop acceptor, and passes through the Input
type.
Implementing this trait looks like:
use async_tls_acceptor::{async_trait, Acceptor, AsyncRead, AsyncWrite};
#[async_trait]
impl<Input> Acceptor<Input> for my_tls_impl::Acceptor
where
Input: AsyncRead + AsyncWrite + Send + Sync + Unpin + 'static,
{
type Output = my_tls_impl::TlsStream<Input>;
type Error = my_tls_impl::Error;
async fn accept(&self, input: Input) -> Result<Self::Output, Self::Error> {
self.accept(input).await
}
}
This crate uses #![deny(unsafe_code)]
.