pub struct TrustAnchor<'a> {
pub subject: Der<'a>,
pub subject_public_key_info: Der<'a>,
pub name_constraints: Option<Der<'a>>,
}
Expand description
A trust anchor (a.k.a. root CA)
Traditionally, certificate verification libraries have represented trust anchors as full X.509
root certificates. However, those certificates contain a lot more data than is needed for
verifying certificates. The TrustAnchor
representation allows an application to store
just the essential elements of trust anchors.
The most common way to get one of these is to call rustls_webpki::anchor_from_trusted_cert()
.
Fields§
§subject: Der<'a>
Value of the subject
field of the trust anchor
subject_public_key_info: Der<'a>
Value of the subjectPublicKeyInfo
field of the trust anchor
name_constraints: Option<Der<'a>>
Value of DER-encoded NameConstraints
, containing name constraints to the trust anchor, if any
Implementations§
Source§impl TrustAnchor<'_>
impl TrustAnchor<'_>
Sourcepub fn to_owned(&self) -> TrustAnchor<'static>
Available on crate feature alloc
only.
pub fn to_owned(&self) -> TrustAnchor<'static>
alloc
only.Yield a 'static
lifetime of the TrustAnchor
by allocating owned Der
variants
Trait Implementations§
Source§impl<'a> Clone for TrustAnchor<'a>
impl<'a> Clone for TrustAnchor<'a>
Source§fn clone(&self) -> TrustAnchor<'a>
fn clone(&self) -> TrustAnchor<'a>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl<'a> Debug for TrustAnchor<'a>
impl<'a> Debug for TrustAnchor<'a>
Source§impl Extend<TrustAnchor<'static>> for RootCertStore
impl Extend<TrustAnchor<'static>> for RootCertStore
Source§fn extend<T: IntoIterator<Item = TrustAnchor<'static>>>(&mut self, iter: T)
fn extend<T: IntoIterator<Item = TrustAnchor<'static>>>(&mut self, iter: T)
Source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)Source§impl<'a> From<Cert<'a>> for TrustAnchor<'a>
impl<'a> From<Cert<'a>> for TrustAnchor<'a>
Source§fn from(cert: Cert<'a>) -> TrustAnchor<'a>
fn from(cert: Cert<'a>) -> TrustAnchor<'a>
Source§impl FromIterator<TrustAnchor<'static>> for RootCertStore
impl FromIterator<TrustAnchor<'static>> for RootCertStore
Source§fn from_iter<T: IntoIterator<Item = TrustAnchor<'static>>>(iter: T) -> Self
fn from_iter<T: IntoIterator<Item = TrustAnchor<'static>>>(iter: T) -> Self
Source§impl<'a> PartialEq for TrustAnchor<'a>
impl<'a> PartialEq for TrustAnchor<'a>
impl<'a> Eq for TrustAnchor<'a>
impl<'a> StructuralPartialEq for TrustAnchor<'a>
Auto Trait Implementations§
impl<'a> Freeze for TrustAnchor<'a>
impl<'a> RefUnwindSafe for TrustAnchor<'a>
impl<'a> Send for TrustAnchor<'a>
impl<'a> Sync for TrustAnchor<'a>
impl<'a> Unpin for TrustAnchor<'a>
impl<'a> UnwindSafe for TrustAnchor<'a>
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 72 bytes