pub struct VerifyResult {
pub ok: bool,
pub code: Option<ErrorCode>,
pub level: Option<Level>,
pub hash: Option<String>,
pub computed_by: Option<String>,
pub blob_checked: bool,
pub detail: String,
pub path: String,
}Expand description
The outcome of verify.
code is None when ok, with one exception: ErrorCode::EvalUnavailable, the one
code of SPEC 10.2 that is not a failure (10.1 step 7.6). When a resolver is given and
7.1-7.5 pass but Resolver::evaluate returns None, the receipt is still
signature-valid, so the result is ok, level Level::Signed, with
code: Some(EvalUnavailable), path $.value and a detail: recomputation did not
happen, and the code says why. Step 7.7 still runs afterwards: if it passes,
blob_checked is true and the code is kept; if it fails, its failure replaces the code as
a normal failure (ok false, its own code).
Fields§
§ok: boolWhether the receipt verified.
code: Option<ErrorCode>The failure’s code; None when ok, except ErrorCode::EvalUnavailable.
level: Option<Level>The level reached; None unless ok.
hash: Option<String>The receipt hash, once the receipt was canonical enough to compute it.
computed_by: Option<String>The receipt’s computed_by (<host>#<key id>), once steps 1-4 passed.
blob_checked: boolWhether step 7.7 ran and passed.
detail: StringA human explanation of the failure (or of EvalUnavailable); empty otherwise.
path: StringWhere the failure (or EvalUnavailable) was found; empty otherwise.