Enum TlsServerCertPin
pub enum TlsServerCertPin {
SpkiSha256([u8; 32]),
ExactDer(CertificateDer<'static>),
}Available on crate feature
tls only.Expand description
Variants§
SpkiSha256([u8; 32])
SHA-256 of the leaf’s SubjectPublicKeyInfo: the industry standard.
Survives certificate renewal as long as the key pair is unchanged.
ExactDer(CertificateDer<'static>)
The exact DER-encoded leaf certificate.
Stricter than a key pin: any re-issuance breaks it. Prefer
TlsServerCertPin::SpkiSha256 unless you control the certificate
file itself.
Implementations§
§impl TlsServerCertPin
impl TlsServerCertPin
pub fn spki_sha256_of(
certificate: &CertificateDer<'_>,
) -> Result<TlsServerCertPin, Box<dyn Error + Send + Sync>>
Available on crate feature boring only.
pub fn spki_sha256_of( certificate: &CertificateDer<'_>, ) -> Result<TlsServerCertPin, Box<dyn Error + Send + Sync>>
boring only.Compute the key (SpkiSha256) pin of certificate.
Trait Implementations§
§impl Clone for TlsServerCertPin
impl Clone for TlsServerCertPin
§fn clone(&self) -> TlsServerCertPin
fn clone(&self) -> TlsServerCertPin
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for TlsServerCertPin
impl Debug for TlsServerCertPin
§impl Display for TlsServerCertPin
impl Display for TlsServerCertPin
impl Eq for TlsServerCertPin
§impl From<CertificateDer<'static>> for TlsServerCertPin
impl From<CertificateDer<'static>> for TlsServerCertPin
§fn from(certificate: CertificateDer<'static>) -> TlsServerCertPin
fn from(certificate: CertificateDer<'static>) -> TlsServerCertPin
Converts to this type from the input type.
§impl From<TlsServerCertPin> for TlsServerCertPinSet
impl From<TlsServerCertPin> for TlsServerCertPinSet
§fn from(pin: TlsServerCertPin) -> TlsServerCertPinSet
fn from(pin: TlsServerCertPin) -> TlsServerCertPinSet
Converts to this type from the input type.
§impl FromStr for TlsServerCertPin
impl FromStr for TlsServerCertPin
§impl PartialEq for TlsServerCertPin
impl PartialEq for TlsServerCertPin
§fn eq(&self, other: &TlsServerCertPin) -> bool
fn eq(&self, other: &TlsServerCertPin) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for TlsServerCertPin
Auto Trait Implementations§
impl Freeze for TlsServerCertPin
impl RefUnwindSafe for TlsServerCertPin
impl Send for TlsServerCertPin
impl Sync for TlsServerCertPin
impl Unpin for TlsServerCertPin
impl UnsafeUnpin for TlsServerCertPin
impl UnwindSafe for TlsServerCertPin
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§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 more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a rama_grpc::Request§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Create a new
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more§impl<T, U> RamaTryFrom<T> for Uwhere
U: TryFrom<T>,
impl<T, U> RamaTryFrom<T> for Uwhere
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
fn rama_try_from(value: T) -> Result<U, <U as RamaTryFrom<T>>::Error>
§impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for Twhere
U: RamaTryFrom<T, CrateMarker>,
impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for Twhere
U: RamaTryFrom<T, CrateMarker>,
type Error = <U as RamaTryFrom<T, CrateMarker>>::Error
fn rama_try_into(self) -> Result<U, <U as RamaTryFrom<T, CrateMarker>>::Error>
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.