pub struct AggregatingResolver { /* private fields */ }Expand description
Combines several certificate resolvers into one. Only one Rustls-compatible resolver can be used since it consumes ClientHello.
Implementations§
Source§impl AggregatingResolver
impl AggregatingResolver
Sourcepub fn new(
acme: Option<Arc<dyn ResolvesServerCertRustls>>,
resolvers: Vec<Arc<dyn ResolvesServerCert>>,
metrics: Metrics,
) -> Self
pub fn new( acme: Option<Arc<dyn ResolvesServerCertRustls>>, resolvers: Vec<Arc<dyn ResolvesServerCert>>, metrics: Metrics, ) -> Self
Constructs a new AggregatingResolver.
Trait Implementations§
Source§impl Debug for AggregatingResolver
impl Debug for AggregatingResolver
Source§impl ResolvesServerCert for AggregatingResolver
impl ResolvesServerCert for AggregatingResolver
Source§fn resolve(&self, ch: ClientHello<'_>) -> Option<Arc<CertifiedKey>>
fn resolve(&self, ch: ClientHello<'_>) -> Option<Arc<CertifiedKey>>
Choose a certificate chain and matching key given simplified
ClientHello information. Read more
Source§fn only_raw_public_keys(&self) -> bool
fn only_raw_public_keys(&self) -> bool
Return true when the server only supports raw public keys.
Auto Trait Implementations§
impl Freeze for AggregatingResolver
impl !RefUnwindSafe for AggregatingResolver
impl Send for AggregatingResolver
impl Sync for AggregatingResolver
impl Unpin for AggregatingResolver
impl !UnwindSafe for AggregatingResolver
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request