pub struct Extension<'a> { /* private fields */ }Expand description
Represents one particular extension.
§Examples
let mut validator = attestation_validator::Validator::default();
validator.add_from_pem(std::fs::File::open("hsm-attestation-pem")?)?;
let extensions = validator.leaf_extensions()?;
let extension = extensions.get("1.3.6.1.4.1.41482.4.1")?;Implementations§
Source§impl Extension<'_>
impl Extension<'_>
Sourcepub fn name(&self) -> &str
pub fn name(&self) -> &str
Returns the extension OID (name).
§Examples
let mut validator = attestation_validator::Validator::default();
validator.add_from_pem(std::fs::File::open("hsm-attestation-pem")?)?;
let extensions = validator.leaf_extensions()?;
let extension = extensions.get("1.3.6.1.4.1.41482.4.1")?;
assert_eq!(extension.name(), "1.3.6.1.4.1.41482.4.1");Trait Implementations§
Source§impl Index<Range<usize>> for Extension<'_>
impl Index<Range<usize>> for Extension<'_>
Source§fn index(&self, index: Range<usize>) -> &Self::Output
fn index(&self, index: Range<usize>) -> &Self::Output
Returns byte slice of extension value for given range.
§Examples
let mut validator = attestation_validator::Validator::default();
validator.add_from_pem(std::fs::File::open("hsm-attestation-pem")?)?;
let extensions = validator.leaf_extensions()?;
let extension = extensions.get("1.3.6.1.4.1.41482.4.1")?;
assert_eq!(extension[0..2], [4, 3]);Source§impl Index<RangeFrom<usize>> for Extension<'_>
impl Index<RangeFrom<usize>> for Extension<'_>
Source§fn index(&self, index: RangeFrom<usize>) -> &Self::Output
fn index(&self, index: RangeFrom<usize>) -> &Self::Output
Returns byte slice of extension value for given range.
§Examples
let mut validator = attestation_validator::Validator::default();
validator.add_from_pem(std::fs::File::open("hsm-attestation-pem")?)?;
let extensions = validator.leaf_extensions()?;
let extension = extensions.get("1.3.6.1.4.1.41482.4.1")?;
assert_eq!(extension[2..], [2, 4, 1]);Source§impl Index<usize> for Extension<'_>
impl Index<usize> for Extension<'_>
Source§fn index(&self, index: usize) -> &Self::Output
fn index(&self, index: usize) -> &Self::Output
Returns a byte of extension value at given position.
§Examples
let mut validator = attestation_validator::Validator::default();
validator.add_from_pem(std::fs::File::open("hsm-attestation-pem")?)?;
let extensions = validator.leaf_extensions()?;
let extension = extensions.get("1.3.6.1.4.1.41482.4.1")?;
assert_eq!(extension[0], 4);Auto Trait Implementations§
impl<'a> Freeze for Extension<'a>
impl<'a> RefUnwindSafe for Extension<'a>
impl<'a> Send for Extension<'a>
impl<'a> Sync for Extension<'a>
impl<'a> Unpin for Extension<'a>
impl<'a> UnwindSafe for Extension<'a>
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,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more