pub struct DynamicTlsHandler { /* private fields */ }Expand description
A dynamic TLS handler that can upgrade from HTTP to HTTPS
Implementations§
Source§impl DynamicTlsHandler
impl DynamicTlsHandler
pub fn new(ssl_managers: Arc<RwLock<HashMap<String, Arc<SslManager>>>>) -> Self
Sourcepub fn is_tls_handshake(data: &[u8]) -> bool
pub fn is_tls_handshake(data: &[u8]) -> bool
Check if data looks like a TLS handshake
Sourcepub async fn update_tls_config(
&self,
domain: &str,
) -> Result<bool, Box<dyn Error>>
pub async fn update_tls_config( &self, domain: &str, ) -> Result<bool, Box<dyn Error>>
Update TLS configuration for a domain
Sourcepub async fn has_tls_config(&self, domain: &str) -> bool
pub async fn has_tls_config(&self, domain: &str) -> bool
Check if TLS is available for a domain
Sourcepub async fn get_tls_config(
&self,
domain: &str,
) -> Option<Arc<RustlsServerConfig>>
pub async fn get_tls_config( &self, domain: &str, ) -> Option<Arc<RustlsServerConfig>>
Get TLS config for a domain
Sourcepub fn start_certificate_monitor(&self, domains: Vec<String>)
pub fn start_certificate_monitor(&self, domains: Vec<String>)
Start background task to monitor for certificate updates
Auto Trait Implementations§
impl Freeze for DynamicTlsHandler
impl !RefUnwindSafe for DynamicTlsHandler
impl Send for DynamicTlsHandler
impl Sync for DynamicTlsHandler
impl Unpin for DynamicTlsHandler
impl !UnwindSafe for DynamicTlsHandler
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more