Struct sozu_lib::tls::CertificateResolver
source · pub struct CertificateResolver {
pub domains: TrieNode<Fingerprint>,
/* private fields */
}
Expand description
Parses and stores TLS certificates, makes them available to Rustls for TLS handshakes
Fields§
§domains: TrieNode<Fingerprint>
all fingerprints of all
Implementations§
source§impl CertificateResolver
impl CertificateResolver
sourcepub fn get_certificate(
&self,
fingerprint: &Fingerprint
) -> Option<CertifiedKeyWrapper>
pub fn get_certificate( &self, fingerprint: &Fingerprint ) -> Option<CertifiedKeyWrapper>
return the certificate in the Rustls-usable form
sourcepub fn add_certificate(
&mut self,
add: &AddCertificate
) -> Result<Fingerprint, CertificateResolverError>
pub fn add_certificate( &mut self, add: &AddCertificate ) -> Result<Fingerprint, CertificateResolverError>
persist a certificate, after ensuring validity, and checking if it can replace another certificate
sourcepub fn remove_certificate(
&mut self,
fingerprint: &Fingerprint
) -> Result<(), CertificateResolverError>
pub fn remove_certificate( &mut self, fingerprint: &Fingerprint ) -> Result<(), CertificateResolverError>
Delete a certificate from the resolver. May fail if there is no alternative for
sourcepub fn replace_certificate(
&mut self,
replace: &ReplaceCertificate
) -> Result<Fingerprint, CertificateResolverError>
pub fn replace_certificate( &mut self, replace: &ReplaceCertificate ) -> Result<Fingerprint, CertificateResolverError>
Short-hand for add_certificate
and then remove_certificate
.
It is possible that the certificate will not be replaced, if the
new certificate does not match add_certificate
rules.
pub fn domain_lookup( &self, domain: &[u8], accept_wildcard: bool ) -> Option<&KeyValue<Key, Fingerprint>>
Trait Implementations§
source§impl Debug for CertificateResolver
impl Debug for CertificateResolver
source§impl Default for CertificateResolver
impl Default for CertificateResolver
source§fn default() -> CertificateResolver
fn default() -> CertificateResolver
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for CertificateResolver
impl !RefUnwindSafe for CertificateResolver
impl Send for CertificateResolver
impl Sync for CertificateResolver
impl Unpin for CertificateResolver
impl !UnwindSafe for CertificateResolver
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