Disambiguate INSUFFICIENT_CRYPTO_RESOURCES errors

[ Merge of http://go/wvgerrit/43281 ]

Bug: 73164325
Test: WV unit/integration test, playback tests using Netflix and
      Play Movies.

Change-Id: Ifc3dd8863da1616eb4a7df35ad010f53b6d5e3d2
This commit is contained in:
Rahul Frias
2018-02-14 12:10:42 -08:00
parent 5053a887dd
commit fe2c777a8e
6 changed files with 19 additions and 3 deletions

View File

@@ -319,6 +319,8 @@ enum CdmResponseType {
LICENSE_REQUEST_INVALID_SUBLICENSE = 277,
CERT_PROVISIONING_EMPTY_SERVICE_CERTIFICATE = 278,
LOAD_SYSTEM_ID_ERROR = 279,
INSUFFICIENT_CRYPTO_RESOURCES_4 = 280,
INSUFFICIENT_CRYPTO_RESOURCES_5 = 281,
};
enum CdmKeyStatus {

View File

@@ -821,7 +821,7 @@ CdmResponseType CryptoSession::LoadKeys(
result = KEY_ADDED;
} else if (OEMCrypto_ERROR_TOO_MANY_KEYS == sts) {
LOGE("CryptoSession::LoadKeys: OEMCrypto_LoadKeys error=%d", sts);
result = INSUFFICIENT_CRYPTO_RESOURCES;
result = INSUFFICIENT_CRYPTO_RESOURCES_4;
} else if (OEMCrypto_ERROR_USAGE_TABLE_UNRECOVERABLE == sts) {
// Handle vendor specific error
LOGE("CryptoSession::LoadKeys: OEMCrypto_LoadKeys error=%d", sts);
@@ -1128,7 +1128,7 @@ CdmResponseType CryptoSession::Decrypt(const CdmDecryptionParameters& params) {
case OEMCrypto_SUCCESS:
return NO_ERROR;
case OEMCrypto_ERROR_INSUFFICIENT_RESOURCES:
return INSUFFICIENT_CRYPTO_RESOURCES;
return INSUFFICIENT_CRYPTO_RESOURCES_5;
case OEMCrypto_ERROR_KEY_EXPIRED:
return NEED_KEY;
case OEMCrypto_ERROR_INVALID_SESSION:

View File

@@ -574,6 +574,12 @@ void PrintTo(const enum CdmResponseType& value, ::std::ostream* os) {
case LOAD_SYSTEM_ID_ERROR:
*os << "LOAD_SYSTEM_ID_ERROR";
break;
case INSUFFICIENT_CRYPTO_RESOURCES_4:
*os << "INSUFFICIENT_CRYPTO_RESOURCES_4";
break;
case INSUFFICIENT_CRYPTO_RESOURCES_5:
*os << "INSUFFICIENT_CRYPTO_RESOURCES_5";
break;
default:
*os << "Unknown CdmResponseType";
break;