Check the resources in ROAs and RSCs against EE certs
authortb <tb@openbsd.org>
Fri, 19 Aug 2022 12:45:53 +0000 (12:45 +0000)
committertb <tb@openbsd.org>
Fri, 19 Aug 2022 12:45:53 +0000 (12:45 +0000)
commit99dbdb7f37c7d4919ca554be92389894fe017ade
treeffd6b3d6e720baa651aa2aff23395f4ca3d28c52
parentfe164aedade678211ae088a10f04bb29f1b734d0
Check the resources in ROAs and RSCs against EE certs

The resources delegated in the RFC 3779 extensions of the EE cert for
ROAs or RSCs can be a subset of the resources in the auth chain. So far
we compared that the resources of ROAs and RSCs are covered by the auth
chain, which is not entirely correct. Extract the necessary data from
the EE cert into rpki-client's own data structures, then verify that
the EE cert's resources cover the ones claimed in the ROA or RSC.

Do this as part or ROA and RSC parsing, that the EE cert's resources are
covered by the auth chain is checked in valid_x509() later on.

All this is a bit more annoying and intrusive than it should be...

ok claudio job
usr.sbin/rpki-client/cert.c
usr.sbin/rpki-client/extern.h
usr.sbin/rpki-client/filemode.c
usr.sbin/rpki-client/parser.c
usr.sbin/rpki-client/roa.c
usr.sbin/rpki-client/rsc.c
usr.sbin/rpki-client/validate.c