Return more descriptive error codes on license generation failure

[ Merge from http://go/wvgerrit/14745 ]

License generation errors previously would result in code -2916 being returned
though the mediaDrm API. More descriptive error codes are now being returned
from -2850 to -2836

b/13976775

Change-Id: I613ad650ab0a072ce9d8029e2af52b72dc617236
This commit is contained in:
Rahul Frias
2015-06-17 17:32:11 -07:00
parent b879cc6c3a
commit 99a2346e3a
7 changed files with 169 additions and 65 deletions

View File

@@ -95,8 +95,8 @@ static android::status_t mapCdmResponseType(wvcdm::CdmResponseType res) {
return kEmptyKeySetIdEng3;
case wvcdm::EMPTY_KEYSET_ID_ENG_4:
return kEmptyKeySetIdEng4;
case wvcdm::EMPTY_LICENSE_REQUEST:
return kEmptyLicenseRequest;
case wvcdm::EMPTY_LICENSE_RENEWAL:
return kEmptyLicenseRenewal;
case wvcdm::EMPTY_LICENSE_RESPONSE_1:
return kEmptyLicenseResponse1;
case wvcdm::EMPTY_LICENSE_RESPONSE_2:
@@ -109,8 +109,8 @@ static android::status_t mapCdmResponseType(wvcdm::CdmResponseType res) {
return kEmptySessionId;
case wvcdm::GENERATE_DERIVED_KEYS_ERROR:
return kGenerateDerivedKeysError;
case wvcdm::GENERATE_NONCE_ERROR:
return kGenerateNonceError;
case wvcdm::LICENSE_RENEWAL_NONCE_GENERATION_ERROR:
return kLicenseRenewalNonceGenerationError;
case wvcdm::GENERATE_USAGE_REPORT_ERROR:
return kGenerateUsageReportError;
case wvcdm::GET_LICENSE_ERROR:
@@ -181,8 +181,6 @@ static android::status_t mapCdmResponseType(wvcdm::CdmResponseType res) {
return kInvalidSessionId;
case wvcdm::KEY_REQUEST_ERROR_1:
return kKeyRequestError1;
case wvcdm::KEY_REQUEST_ERROR_2:
return kKeyRequestError2;
case wvcdm::KEY_SIZE_ERROR:
return kKeySizeError;
case wvcdm::KEYSET_ID_NOT_FOUND_1:
@@ -233,8 +231,8 @@ static android::status_t mapCdmResponseType(wvcdm::CdmResponseType res) {
return kRenewKeyError1;
case wvcdm::RENEW_KEY_ERROR_2:
return kRenewKeyError2;
case wvcdm::RENEWAL_REQUEST_ERROR:
return kRenewalRequestError;
case wvcdm::LICENSE_RENEWAL_SIGNING_ERROR:
return kLicenseRenewalSigningError;
case wvcdm::RESTORE_OFFLINE_LICENSE_ERROR_1:
return kRestoreOfflineLicenseError1;
case wvcdm::RESTORE_OFFLINE_LICENSE_ERROR_2:
@@ -289,8 +287,8 @@ static android::status_t mapCdmResponseType(wvcdm::CdmResponseType res) {
return kUnsupportedInitData;
case wvcdm::USAGE_INFO_NOT_FOUND:
return kUsageInfoNotFound;
case wvcdm::SERVICE_CERTIFICATE_REQUEST_GENERATE_ERROR:
return kServiceCertificateRequestGenerateError;
case wvcdm::LICENSE_RENEWAL_SERVICE_CERTIFICATE_GENERATION_ERROR:
return kLicenseRenewalServiceCertificateGenerationError;
case wvcdm::PARSE_SERVICE_CERTIFICATE_ERROR:
return kParseServiceCertificateError;
case wvcdm::SERVICE_CERTIFICATE_TYPE_ERROR:
@@ -313,6 +311,36 @@ static android::status_t mapCdmResponseType(wvcdm::CdmResponseType res) {
return kInvalidQueryStatus;
case wvcdm::EMPTY_PROVISIONING_CERTIFICATE_2:
return kEmptyProvisioningCertificate2;
case wvcdm::LICENSE_PARSER_NOT_INITIALIZED_4:
return kLicenseParserNotInitialized4;
case wvcdm::INVALID_PARAMETERS_LIC_3:
return kInvalidParametersLic3;
case wvcdm::INVALID_PARAMETERS_LIC_4:
return kInvalidParametersLic4;
case wvcdm::INVALID_PARAMETERS_LIC_5:
return kInvalidParametersLic5;
case wvcdm::INVALID_PARAMETERS_LIC_6:
return kInvalidParametersLic6;
case wvcdm::INVALID_PARAMETERS_LIC_7:
return kInvalidParametersLic7;
case wvcdm::LICENSE_REQUEST_SERVICE_CERTIFICATE_GENERATION_ERROR:
return kLicenseRequestServiceCertificateGenerationError;
case wvcdm::CENC_INIT_DATA_UNAVAILABLE:
return kCencInitDataUnavailable;
case wvcdm::PREPARE_CENC_CONTENT_ID_FAILED:
return kPrepareCencContentIdFailed;
case wvcdm::WEBM_INIT_DATA_UNAVAILABLE:
return kWebmInitDataUnavailable;
case wvcdm::PREPARE_WEBM_CONTENT_ID_FAILED:
return kPrepareWebmContentIdFailed;
case wvcdm::UNSUPPORTED_INIT_DATA_FORMAT:
return kUnsupportedInitDataFormat;
case wvcdm::LICENSE_REQUEST_NONCE_GENERATION_ERROR:
return kLicenseRequestNonceGenerationError;
case wvcdm::LICENSE_REQUEST_SIGNING_ERROR:
return kLicenseRequestSigningError;
case wvcdm::EMPTY_LICENSE_REQUEST:
return kEmptyLicenseRequest;
case wvcdm::UNKNOWN_ERROR:
return android::ERROR_DRM_UNKNOWN;
}