Skip to main content

RevocationTarget

Trait RevocationTarget 

Source
pub trait RevocationTarget<'a> {
    // Required methods
    fn issuer(&self) -> &Name<'a>;
    fn serial(&self) -> Integer<'a>;
    fn extensions(&self) -> Option<&Extensions<'a>>;
    fn kind(&self) -> TargetKind;
    fn revocation_scheme(&self) -> RevocationScheme;
    fn encoded(&self) -> &'a [u8] ⓘ;
    fn span(&self) -> Span;
    fn source_parser(&self) -> &'a Parser;

    // Provided method
    fn execution_in<'op, W: Work>(&'op self, work: &'op W) -> Execution<'op>
       where 'a: 'op { ... }
}
Expand description

Coherently associated original fields for the common status processors.

Implementations are trusted O(1) adapters: borrow original fields without parsing, allocation or normalization. Every field describes the same target. This does not authenticate it or its issuer. Deferred work retains the source ceiling and the current operation. The issuer/responder remains a real PKC; an AC does not acquire an artificial subject public key.

use structured_asn1::memory::Work;
use structured_pkix::{Result, revocation::RevocationTarget,
    crl::{Authenticated, ScopeOutcome}};
fn applicable<'a>(source: &Authenticated<'_, '_>, target: &impl RevocationTarget<'a>,
    work: &impl Work) -> Result<bool> {
    Ok(matches!(source.scope(target, work)?, ScopeOutcome::Applicable(_)))
}

Required Methods§

Source

fn issuer(&self) -> &Name<'a>

Original issuer DN.

Source

fn serial(&self) -> Integer<'a>

Original arbitrary-width serial.

Source

fn extensions(&self) -> Option<&Extensions<'a>>

Original extension catalogue, absent where the schema omitted it.

Source

fn kind(&self) -> TargetKind

Actual schema category.

Source

fn revocation_scheme(&self) -> RevocationScheme

Written scheme, never inferred from short validity or absent URLs.

Source

fn encoded(&self) -> &'a [u8] ⓘ

Whole original encoding used to bind evidence contributors.

Source

fn span(&self) -> Span

Honest source enclosure for processing failures.

Source

fn source_parser(&self) -> &'a Parser

Original parser for these fields, including deferred BER depth and limits.

Provided Methods§

Source

fn execution_in<'op, W: Work>(&'op self, work: &'op W) -> Execution<'op>
where 'a: 'op,

Borrow the original source ceiling and current operation.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§