KeyMaster: support boot,vendor patchlevels
- Add CONFIGURE_{VENDOR,BOOT}_PATCHLEVEL messages to
android_keymaster_messages.h
- Add AndroidKeymaster::Configure{Vendor,Boot}Patchlevel() methods
which forwards on to KeymasterContext::Set{Vendor,Boot}Patchevel
- Add {Set,Get}{Vendor,Boot}Patchlevel() methods to KeymasterContext,
with default implementations that do nothing.
- Implement {Get,Set}{Vendor,Boot}Patchlevel() methods for
PureSoftKeymasterContext
- Extend CheckVersionInfo() to check vendor and boot patchlevels (if
available) for upgrade-required.
- Add GetVendorPatchlevel() helper to retrieve property values.
- Add keymaster::ExtendKeyBlobAuthorizations() method to add
{vendor,boot}_patchlevel info to key.
- Add a keymaster::FullUpgradeSoftKeyBlob() variant of
UpgradeSoftKeyBlob() that also checks {vendor,boot}_patchlevel if
available.
Bug: 193423844
Test: VtsAidlKeyMintTargetTest
Change-Id: Ia311da0b8176fdd7b3c820a6c6fa11db162f1209
11 files changed