pub fn process_reference(
reference: &Reference,
resolver: &UriReferenceResolver<'_>,
signature_node: Node<'_, '_>,
ref_index: usize,
store_pre_digest: bool,
) -> Result<ReferenceResult, ReferenceProcessingError>Expand description
Process a single <Reference>: dereference URI → apply transforms → compute
digest → compare with stored <DigestValue>.
§Arguments
reference: The parsed<Reference>element.resolver: URI resolver for the document.signature_node: The<Signature>element (for enveloped-signature transform).ref_index: Zero-based index of this reference in<SignedInfo>.store_pre_digest: If true, store the pre-digest bytes in the result.
§Errors
Returns Err for processing failures (URI dereference, transform errors).
Digest mismatch is NOT an error — it produces
Ok(ReferenceResult { status: Invalid(ReferenceDigestMismatch { .. }) }).