rpki-client: remove another layer in the cms code
The cms_parse_validate() -> _internal() split was done for detached
messages, i.e., geofeed. This has been retired for a while now, and
won't come back.
ok claudio
py-protobuf: fix undefined symbol _upb_UnreachableFailure()
For some reason, the tarball on pypi does not ship the file defining
this function. Presumably pypi builds with -DNDEBUG or similar. Pull
in the file from protbuf-cpp.
reported/tested/ok thfr
vmm(4): support variable length instructions in VMX paths.
The Intel VMX handlers for things like HLT, RDMSR, etc. perform
strict checks for instruction length. This is excessive and incorrect
given the joys of x86/amd64. There's no need to kill the vcpu if
it was silly enough to prefix a HLT for some strange reason.
"sure", mlarkin@
rpki-client: garbage collect the _parse() functions
The _parse() functions are no longer used and can be removed.
With them gone, cms_parse_validate() becomes internal to cms.c
ok claudio
rpki-client: replace _parse() functions for signed objects
Replace calls to _parse() with calls to signed_object_parse() both
in file mode and in the parser process.
ok claudio
rpki-client: add signed_object_parse()
Now that all signed object parser functions have been unified,
we can replace them all with a single implementation. Add a helper
that returns the appropriate struct signed_obj * for a given rtype
and then use its handlers to allocate, parse, validate and free
the underlying C type. This is wrapped in signed_object_parse().
There is one small subtlety: for mft and tak the parse functions
fail if their _validate handler fails, for the remaining objects
only a flag is set and the handler always succeeds, so checking
the error of ->validate() does not change behavior.
ok claudio
rpki-client: add OID getter to struct signed_obj
This simply returns the OID ASN1_OBJECT created by x509_init_oid()
appropriate for each signed object. We need this for CMS validation.
Since these aren't runtime constants, they can't hang directly off
the static structs.
ok claudio