Added CDM support for production readiness reporting.
[ Merge of http://go/wvgerrit/151518 ] Extended the CDM layer to report OEMCrypto's production readiness via string property query. If OEMCrypto implementents OEMCrypto_ProductionReady(), then the reported readiness by the CDM will report "True" or "False". If OEMCrypto does not implement OEMCrypto_ProductionReady() then no level of readiness is assumed, and the CDM will report "Unknown". Bug: 231655151 Test: run_prov30_tests and request_license_test Change-Id: I6afe481ef00ac129d02b004eca89a65810bfbff8
This commit is contained in:
@@ -817,6 +817,28 @@ CdmResponseType CdmEngine::QueryStatus(RequestedSecurityLevel security_level,
|
||||
}
|
||||
return NO_ERROR;
|
||||
}
|
||||
if (query_token == QUERY_KEY_PRODUCTION_READY) {
|
||||
CdmProductionReadiness readiness;
|
||||
if (!crypto_session->GetProductionReadiness(security_level, &readiness)) {
|
||||
LOGW("GetProductionReadiness failed");
|
||||
return UNKNOWN_ERROR;
|
||||
}
|
||||
switch (readiness) {
|
||||
case kProductionReadinessUnknown:
|
||||
*query_response = QUERY_VALUE_UNKNOWN;
|
||||
break;
|
||||
case kProductionReadinessTrue:
|
||||
*query_response = QUERY_VALUE_TRUE;
|
||||
break;
|
||||
case kProductionReadinessFalse:
|
||||
*query_response = QUERY_VALUE_FALSE;
|
||||
break;
|
||||
default:
|
||||
LOGW("Unknown readiness: %d", static_cast<int>(readiness));
|
||||
return UNKNOWN_ERROR;
|
||||
}
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
CdmResponseType status;
|
||||
M_TIME(status = crypto_session->Open(security_level),
|
||||
|
||||
Reference in New Issue
Block a user