pub struct Request<'a> { /* private fields */ }Expand description
A request whose native signature and original attribute catalogue are readable.
Alternative faults/absence remain in components, without erasing native facts.
Implementations§
Source§impl<'a> Request<'a>
impl<'a> Request<'a>
Sourcepub fn read(parser: &'a Parser, bytes: &'a [u8], base: u64) -> Result<Self>
pub fn read(parser: &'a Parser, bytes: &'a [u8], base: u64) -> Result<Self>
Read a complete original DER request under the supplied parser limits.
Sourcepub fn read_element(parent: &Reader<'a>, element: &Element<'a>) -> Result<Self>
pub fn read_element(parent: &Reader<'a>, element: &Element<'a>) -> Result<Self>
Read an embedded request, preserving its real source, depth and budget.
Sourcepub fn signed_bytes(&self) -> &'a [u8] ⓘ
pub fn signed_bytes(&self) -> &'a [u8] ⓘ
Exact native proof input, including the alternative-value attribute.
Sourcepub fn subject(&self) -> &Name<'a>
pub fn subject(&self) -> &Name<'a>
Original requested subject, without application identity policy.
Sourcepub fn public_key(&self) -> PublicKeyInfo<'a>
pub fn public_key(&self) -> PublicKeyInfo<'a>
Original native key used for the native proof of possession.
Sourcepub fn attributes(&self) -> &[Attribute<'a>]
pub fn attributes(&self) -> &[Attribute<'a>]
All original attributes, with no product-specific allowlist or normalization. This raw catalogue borrow performs no traversal; callers fund their scans.
Sourcepub fn components(&self) -> &Components<'a>
pub fn components(&self) -> &Components<'a>
Independent alternative components, including located faults and absence.
Sourcepub fn prepare<W: Work>(&self, work: &W) -> Result<Prepared<'a>>
pub fn prepare<W: Work>(&self, work: &W) -> Result<Prepared<'a>>
Strict preparation: all three single-valued attributes must be readable.
Sourcepub fn check<W: Work, N: Verify<W>, A: AlternativeVerifier<W>>(
&self,
native: &N,
verifier: &A,
work: &W,
) -> Result<Signatures, CheckError<N::Error, A::Error>>
pub fn check<W: Work, N: Verify<W>, A: AlternativeVerifier<W>>( &self, native: &N, verifier: &A, work: &W, ) -> Result<Signatures, CheckError<N::Error, A::Error>>
Evaluate both proofs independently; a two-key enrollment caller requires Both.