pub fn validate<'p, 'a, V, T, R, W>(
certificates: &'p [&'a Certificate<'a>],
trusted_aa_ca: &'a Certificate<'a>,
context: &ValidationContext<'a, '_, V, T, R, W>,
) -> PathResult<'p, 'a, <V as Verify<W>>::Error, R::Error>Expand description
Validate one full AA path ending in a caller-selected, directly trusted AA CA.
Input includes the AA issuer first and the selected AA CA last. The final
position must be the exact trusted_aa_ca object supplied separately from
the path; trust is never inferred from the final element of an input pool.
Equal encodings can be represented by using that trusted object in the
final position, without copying or re-parsing its contents. All lower
certificates must have AAControls; the AA CA’s optional control also applies.
One position alone is not an AA-CA path: use explicit direct-AA authentication
instead. No self-signed certificate discovered in a pool becomes trusted.
The existing PKIX context controls policy, interval and path processing bounds.
Its Work bounds the entire operation, including the control census. Only the
PKIX phase consumes ValidationBounds.work; no new policy settings are added.
All control syntax/distance checks run before provider callbacks. Critical
AAControls is understood only because this operation enforces its complete
census; the caller’s remaining recognizer capabilities are forwarded unchanged.
No successful prefix or key is returned on processing/callback refusal.
RFC5755 §7.4: https://www.rfc-editor.org/rfc/rfc5755#section-7.4