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:
@@ -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 {
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -260,10 +260,12 @@ enum {
|
||||
kLicenseRequestInvalidSublicense = ERROR_DRM_VENDOR_MIN + 269,
|
||||
kCertProvisioningEmptyServiceCertificate = ERROR_DRM_VENDOR_MIN + 270,
|
||||
kLoadSystemIdError = ERROR_DRM_VENDOR_MIN + 271,
|
||||
kInsufficientCryptoResources4 = ERROR_DRM_VENDOR_MIN + 272,
|
||||
kInsufficientCryptoResources5 = ERROR_DRM_VENDOR_MIN + 273,
|
||||
|
||||
// This should always follow the last error code.
|
||||
// The offset value should be updated each time a new error code is added.
|
||||
kErrorWVDrmMaxErrorUsed = ERROR_DRM_VENDOR_MIN + 271,
|
||||
kErrorWVDrmMaxErrorUsed = ERROR_DRM_VENDOR_MIN + 273,
|
||||
|
||||
// Used by crypto test mode
|
||||
kErrorTestMode = ERROR_DRM_VENDOR_MAX,
|
||||
|
||||
@@ -501,6 +501,10 @@ static android::status_t mapCdmResponseType(wvcdm::CdmResponseType res) {
|
||||
return kCertProvisioningEmptyServiceCertificate;
|
||||
case wvcdm::LOAD_SYSTEM_ID_ERROR:
|
||||
return kLoadSystemIdError;
|
||||
case wvcdm::INSUFFICIENT_CRYPTO_RESOURCES_4:
|
||||
return kInsufficientCryptoResources4;
|
||||
case wvcdm::INSUFFICIENT_CRYPTO_RESOURCES_5:
|
||||
return kInsufficientCryptoResources5;
|
||||
}
|
||||
|
||||
// Return here instead of as a default case so that the compiler will warn
|
||||
|
||||
@@ -234,6 +234,8 @@ static Status mapCdmResponseType(wvcdm::CdmResponseType res) {
|
||||
case wvcdm::INVALID_PARAMETERS_ENG_17:
|
||||
case wvcdm::INVALID_PARAMETERS_ENG_18:
|
||||
case wvcdm::INSUFFICIENT_CRYPTO_RESOURCES_3:
|
||||
case wvcdm::INSUFFICIENT_CRYPTO_RESOURCES_4:
|
||||
case wvcdm::INSUFFICIENT_CRYPTO_RESOURCES_5:
|
||||
case wvcdm::CREATE_USAGE_ENTRY_UNKNOWN_ERROR:
|
||||
case wvcdm::LOAD_USAGE_ENTRY_GENERATION_SKEW:
|
||||
case wvcdm::LOAD_USAGE_ENTRY_SIGNATURE_FAILURE:
|
||||
|
||||
Reference in New Issue
Block a user