Add header functions for license release
Bug: 295956275 Change-Id: I223937ea25544cfb562bc063e75b359e4d908984
This commit is contained in:
@@ -71,6 +71,9 @@ typedef OEMCryptoResult (*L1_GenerateSignature_t)(OEMCrypto_SESSION session,
|
||||
typedef OEMCryptoResult (*L1_PrepAndSignLicenseRequest_t)(
|
||||
OEMCrypto_SESSION session, uint8_t* message, size_t message_length,
|
||||
size_t* core_message_length, uint8_t* signature, size_t* signature_length);
|
||||
typedef OEMCryptoResult (*L1_PrepAndSignLicenseRelease_t)(
|
||||
OEMCrypto_SESSION session, uint8_t* message, size_t message_length,
|
||||
size_t* core_message_length, uint8_t* signature, size_t* signature_length);
|
||||
typedef OEMCryptoResult (*L1_PrepAndSignRenewalRequest_t)(
|
||||
OEMCrypto_SESSION session, uint8_t* message, size_t message_length,
|
||||
size_t* core_message_length, uint8_t* signature, size_t* signature_length);
|
||||
@@ -185,6 +188,10 @@ typedef OEMCryptoResult (*L1_ReportUsage_t)(OEMCrypto_SESSION session,
|
||||
const uint8_t* pst,
|
||||
size_t pst_length, uint8_t* buffer,
|
||||
size_t* buffer_length);
|
||||
typedef OEMCryptoResult (*L1_GetUsageEntryInfo_t)(
|
||||
OEMCrypto_SESSION session, OEMCrypto_Usage_Entry_Status* status,
|
||||
int64_t* seconds_since_license_received,
|
||||
int64_t* seconds_since_first_decrypt);
|
||||
typedef OEMCrypto_ProvisioningMethod (*L1_GetProvisioningMethod_t)();
|
||||
typedef OEMCryptoResult (*L1_GetOEMPublicCertificate_t)(
|
||||
uint8_t* public_cert, size_t* public_cert_length);
|
||||
@@ -349,6 +356,7 @@ struct FunctionPointers {
|
||||
L1_GenerateNonce_t GenerateNonce;
|
||||
L1_GenerateSignature_t GenerateSignature;
|
||||
L1_PrepAndSignLicenseRequest_t PrepAndSignLicenseRequest;
|
||||
L1_PrepAndSignLicenseRelease_t PrepAndSignLicenseRelease;
|
||||
L1_PrepAndSignRenewalRequest_t PrepAndSignRenewalRequest;
|
||||
L1_PrepAndSignProvisioningRequest_t PrepAndSignProvisioningRequest;
|
||||
L1_LoadLicense_t LoadLicense;
|
||||
@@ -388,6 +396,7 @@ struct FunctionPointers {
|
||||
L1_UpdateUsageTable_t UpdateUsageTable;
|
||||
L1_DeactivateUsageEntry_t DeactivateUsageEntry;
|
||||
L1_ReportUsage_t ReportUsage;
|
||||
L1_GetUsageEntryInfo_t GetUsageEntryInfo;
|
||||
L1_GetProvisioningMethod_t GetProvisioningMethod;
|
||||
L1_GetOEMPublicCertificate_t GetOEMPublicCertificate;
|
||||
L1_LoadOEMPrivateKey_t LoadOEMPrivateKey;
|
||||
@@ -976,6 +985,7 @@ class Adapter {
|
||||
LOOKUP_ALL( 9, GenerateRSASignature, OEMCrypto_GenerateRSASignature);
|
||||
LOOKUP( 8, 15, GenerateSignature, OEMCrypto_GenerateSignature);
|
||||
LOOKUP_ALL(16, PrepAndSignLicenseRequest, OEMCrypto_PrepAndSignLicenseRequest);
|
||||
LOOKUP_ALL(16, PrepAndSignLicenseRelease, OEMCrypto_PrepAndSignLicenseRelease);
|
||||
LOOKUP_ALL(16, PrepAndSignRenewalRequest, OEMCrypto_PrepAndSignRenewalRequest);
|
||||
LOOKUP_ALL(16, PrepAndSignProvisioningRequest, OEMCrypto_PrepAndSignProvisioningRequest);
|
||||
LOOKUP_ALL( 8, Generic_Decrypt_V17, OEMCrypto_Generic_Decrypt_V17);
|
||||
@@ -1014,6 +1024,7 @@ class Adapter {
|
||||
LOOKUP_ALL(10, QueryKeyControl, OEMCrypto_QueryKeyControl);
|
||||
LOOKUP_ALL(16, LoadRenewal, OEMCrypto_LoadRenewal);
|
||||
LOOKUP_ALL( 9, ReportUsage, OEMCrypto_ReportUsage);
|
||||
LOOKUP_ALL(19, GetUsageEntryInfo, OEMCrypto_GetUsageEntryInfo);
|
||||
LOOKUP_ALL( 8, SecurityLevel_V16, OEMCrypto_SecurityLevel_V16);
|
||||
LOOKUP_ALL(11, SecurityPatchLevel, OEMCrypto_Security_Patch_Level);
|
||||
LOOKUP_ALL(14, SelectKey, OEMCrypto_SelectKey);
|
||||
@@ -1139,6 +1150,7 @@ class Adapter {
|
||||
level3_.Generic_Verify_V17 = Level3_Generic_Verify_V17;
|
||||
level3_.DeactivateUsageEntry = Level3_DeactivateUsageEntry;
|
||||
level3_.ReportUsage = Level3_ReportUsage;
|
||||
level3_GetUsageEntryInfo = Level3_GetUsageEntryInfo;
|
||||
level3_.GetProvisioningMethod = Level3_GetProvisioningMethod;
|
||||
level3_.GetOEMPublicCertificate = Level3_GetOEMPublicCertificate;
|
||||
level3_.SupportedCertificates = Level3_SupportedCertificates;
|
||||
@@ -1156,6 +1168,7 @@ class Adapter {
|
||||
level3_.LoadProvisioning_V18 = Level3_LoadProvisioning;
|
||||
level3_.PrepAndSignProvisioningRequest = Level3_PrepAndSignProvisioningRequest;
|
||||
level3_.PrepAndSignLicenseRequest = Level3_PrepAndSignLicenseRequest;
|
||||
level3_.PrepAndSignLicenseRelease = Level3_PrepAndSignLicenseRelease;
|
||||
level3_.PrepAndSignRenewalRequest = Level3_PrepAndSignRenewalRequest;
|
||||
level3_.MaximumUsageTableHeaderSize = Level3_MaximumUsageTableHeaderSize;
|
||||
level3_.AllocateSecureBuffer = Level3_AllocateSecureBuffer;
|
||||
@@ -2066,6 +2079,12 @@ extern "C" OEMCryptoResult OEMCrypto_PrepAndSignLicenseRequest(
|
||||
return OEMCrypto_ERROR_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
extern "C" OEMCryptoResult OEMCrypto_PrepAndSignLicenseRelease(
|
||||
OEMCrypto_SESSION session, uint8_t* message, size_t message_length,
|
||||
size_t* core_message_length, uint8_t* signature, size_t* signature_length) {
|
||||
return OEMCrypto_ERROR_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
extern "C" OEMCryptoResult OEMCrypto_PrepAndSignRenewalRequest(
|
||||
OEMCrypto_SESSION session, uint8_t* message, size_t message_length,
|
||||
size_t* core_message_length, uint8_t* signature, size_t* signature_length) {
|
||||
@@ -2720,6 +2739,13 @@ extern "C" OEMCryptoResult OEMCrypto_ReportUsage(OEMCrypto_SESSION session,
|
||||
buffer_length);
|
||||
}
|
||||
|
||||
extern "C" OEMCryptoResult OEMCrypto_GetUsageEntryInfo(
|
||||
OEMCrypto_SESSION session, OEMCrypto_Usage_Entry_Status* status,
|
||||
int64_t* seconds_since_license_received,
|
||||
int64_t* seconds_since_first_decrypt) {
|
||||
return OEMCrypto_ERROR_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
extern "C" OEMCryptoResult OEMCrypto_GetCurrentSRMVersion(uint16_t* version) {
|
||||
if (!gAdapter) return OEMCrypto_ERROR_UNKNOWN_FAILURE;
|
||||
// Level 3 can't load an SRM, so this just checkes Level 1.
|
||||
|
||||
Reference in New Issue
Block a user