#[non_exhaustive]pub struct RevocationAssessment {
pub verdict: RevocationVerdict,
pub hints: Vec<SourcedRevocation>,
pub discovery: Option<Result<DiscoveryOutcome, AcdpError>>,
/* private fields */
}Expand description
A complete revocation assessment: the verdict, out-of-scope hints, and what discovery did.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.verdict: RevocationVerdictThe verdict.
hints: Vec<SourcedRevocation>Verified revocations that do NOT speak for the producer (RFC-ACDP-0014 §7 “Producer scope”, 0.5.0) — reported, never applied.
discovery: Option<Result<DiscoveryOutcome, AcdpError>>§8 discovery: None when not configured; Some(Ok) with what each
trust class found; Some(Err(AcdpError::RevocationUnknown { .. }))
when discovery could not finish.
Implementations§
Source§impl RevocationAssessment
impl RevocationAssessment
Sourcepub fn enforce(self) -> Result<Self, AcdpError>
pub fn enforce(self) -> Result<Self, AcdpError>
Apply the policy: a refusal becomes AcdpError::KeyRevoked; an
unknown verdict becomes AcdpError::RevocationUnknown under
DiscoveryFailurePolicy::FailClosed and is returned as Ok under
DiscoveryFailurePolicy::ProceedWithKnown.
Sourcepub fn pre_compromise(&self) -> bool
pub fn pre_compromise(&self) -> bool
Whether the signing key is placed before an in-scope compromise boundary (§7 step 2): the signature must be verified under the RFC-ACDP-0010 §10 historical rule.