I had temporarily removed this code during the tree traversal review,
and forgot to restore it.
Push current certificate into certificate stack, so child objects can
validate themselves against it.
if (error)
goto revert_uris;
- error = handle_manifest(sia_uris.mft, &pp);
+ error = x509stack_push(validation_certstack(state), cert_uri,
+ cert, policy, certype);
if (error)
goto revert_uris;
+ cert = NULL; /* Ownership stolen */
+
+ error = handle_manifest(sia_uris.mft, &pp);
+ if (error) {
+ x509stack_cancel(validation_certstack(state));
+ goto revert_uris;
+ }
/* -- Validate & traverse the RPP (@pp) described by the manifest -- */
rpp_traverse(pp);