#![deny(rust_2018_idioms, unreachable_pub, missing_debug_implementations)]
use std::sync::atomic::{AtomicUsize, Ordering};
#[cfg(feature = "openssl")]
pub mod openssl;
#[cfg(feature = "rustls")]
pub mod rustls;
mod counter;
pub fn max_concurrent_ssl_accept(num: usize) {
MAX_SSL_ACCEPT.store(num, Ordering::Relaxed);
}
static MAX_SSL_ACCEPT: AtomicUsize = AtomicUsize::new(256);
thread_local! {
static MAX_SSL_ACCEPT_COUNTER: counter::Counter = counter::Counter::new(MAX_SSL_ACCEPT.load(Ordering::Relaxed));
}
#[derive(Clone, Debug, PartialEq, Eq, Hash)]
pub struct PskIdentity(pub Vec<u8>);
#[derive(Clone, Debug, PartialEq, Eq, Hash)]
pub struct Servername(pub String);