Files
android/libwvdrmengine/include/WVErrors.h
Alex Dale 2a16d70a06 Suppress error for removing lingering offline licenses.
[ Merge of http://go/wvgerrit/97963 ]

There are situations where an offline license file will remain on the
system after it's usage entry has been deleted.  This would result in
its key set ID being reported as present by the CDM, but any
operations acting upon it will result in an error.

The app should be able to remove the license without error, so long
as the license file exists and no other OEMCrypto operations fail.

This change introduces a new error code LICENSE_USAGE_ENTRY_MISSING,
which indicates that a license's usage entry cannot be found.

A new integration test checks that the CDM can handle the calls to
removeOfflineLicense().

Bug: 137034719
Test: Android unit and integration tests
Change-Id: Ibdbe963b7f7e3ac97b446300d8e3896cdee7abc5
2020-04-29 17:48:26 -07:00

312 lines
16 KiB
C++

//
// Copyright 2018 Google LLC. All Rights Reserved. This file and proprietary
// source code may only be used and distributed under the Widevine Master
// License Agreement.
//
#ifndef WV_ERRORS_H_
#define WV_ERRORS_H_
#include "media/stagefright/MediaErrors.h"
namespace wvdrm {
using android::ERROR_DRM_VENDOR_MIN;
using android::ERROR_DRM_VENDOR_MAX;
enum {
kErrorIncorrectBufferSize = ERROR_DRM_VENDOR_MIN,
kErrorCDMGeneric = ERROR_DRM_VENDOR_MIN + 1,
kErrorUnsupportedCrypto = ERROR_DRM_VENDOR_MIN + 2,
kErrorExpectedUnencrypted = ERROR_DRM_VENDOR_MIN + 3,
kErrorSessionIsOpen = ERROR_DRM_VENDOR_MIN + 4,
kErrorTooManySessions = ERROR_DRM_VENDOR_MIN + 5,
kErrorInvalidKey = ERROR_DRM_VENDOR_MIN + 6,
kErrorNoOriginSpecified = ERROR_DRM_VENDOR_MIN + 7,
kAddKeyError = ERROR_DRM_VENDOR_MIN + 8,
kCertProvisioningGetKeyboxError1 = ERROR_DRM_VENDOR_MIN + 9,
kCertProvisioningGetKeyboxError2 = ERROR_DRM_VENDOR_MIN + 10,
kCertProvisioningInvalidCertType = ERROR_DRM_VENDOR_MIN + 11,
kCertProvisioningRequestError1 = ERROR_DRM_VENDOR_MIN + 12,
kCertProvisioningRequestNonceGenerationError = ERROR_DRM_VENDOR_MIN + 13,
kCertProvisioningRequestError3 = ERROR_DRM_VENDOR_MIN + 14,
kCertProvisioningRequestError4 = ERROR_DRM_VENDOR_MIN + 15,
kCertProvisioningResponseError1 = ERROR_DRM_VENDOR_MIN + 16,
kCertProvisioningResponseError2 = ERROR_DRM_VENDOR_MIN + 17,
kCertProvisioningResponseError3 = ERROR_DRM_VENDOR_MIN + 18,
kCertProvisioningResponseError4 = ERROR_DRM_VENDOR_MIN + 19,
kCertProvisioningResponseError7 = ERROR_DRM_VENDOR_MIN + 22,
kCertProvisioningResponseError8 = ERROR_DRM_VENDOR_MIN + 23,
kDeviceCertificateError1 = ERROR_DRM_VENDOR_MIN + 30,
kDeviceCertificateError2 = ERROR_DRM_VENDOR_MIN + 31,
kDeviceCertificateError3 = ERROR_DRM_VENDOR_MIN + 32,
kDeviceCertificateError4 = ERROR_DRM_VENDOR_MIN + 33,
kEmptyKeyData1 = ERROR_DRM_VENDOR_MIN + 34,
kEmptyKeyData2 = ERROR_DRM_VENDOR_MIN + 35,
kEmptyKeySetId = ERROR_DRM_VENDOR_MIN + 36,
kEmptyKeySetIdEng1 = ERROR_DRM_VENDOR_MIN + 37,
kEmptyKeySetIdEng2 = ERROR_DRM_VENDOR_MIN + 38,
kEmptyKeySetIdEng3 = ERROR_DRM_VENDOR_MIN + 39,
kEmptyKeySetIdEng4 = ERROR_DRM_VENDOR_MIN + 40,
kEmptyLicenseRenewal = ERROR_DRM_VENDOR_MIN + 41,
kEmptyLicenseResponse1 = ERROR_DRM_VENDOR_MIN + 42,
kEmptyLicenseResponse2 = ERROR_DRM_VENDOR_MIN + 43,
kEmptyProvisioningCertificate1 = ERROR_DRM_VENDOR_MIN + 44,
kEmptyProvisioningResponse = ERROR_DRM_VENDOR_MIN + 45,
kEmptySessionId = ERROR_DRM_VENDOR_MIN + 46,
kGenerateDerivedKeysError = ERROR_DRM_VENDOR_MIN + 47,
kLicenseRenewalNonceGenerationError = ERROR_DRM_VENDOR_MIN + 48,
kGenerateUsageReportError = ERROR_DRM_VENDOR_MIN + 49,
kGetLicenseError = ERROR_DRM_VENDOR_MIN + 50,
kGetReleasedLicenseError = ERROR_DRM_VENDOR_MIN + 51,
kGetUsageInfoError1 = ERROR_DRM_VENDOR_MIN + 52,
kGetUsageInfoError2 = ERROR_DRM_VENDOR_MIN + 53,
kGetUsageInfoError3 = ERROR_DRM_VENDOR_MIN + 54,
kGetUsageInfoError4 = ERROR_DRM_VENDOR_MIN + 55,
kInitDataNotFound = ERROR_DRM_VENDOR_MIN + 56,
kInvalidDecryptParametersEng1 = ERROR_DRM_VENDOR_MIN + 62,
kInvalidDecryptParametersEng2 = ERROR_DRM_VENDOR_MIN + 63,
kInvalidDecryptParametersEng3 = ERROR_DRM_VENDOR_MIN + 64,
kInvalidDecryptParametersEng4 = ERROR_DRM_VENDOR_MIN + 65,
kInvalidDeviceCertificateType = ERROR_DRM_VENDOR_MIN + 66,
kInvalidKeySystem = ERROR_DRM_VENDOR_MIN + 67,
kInvalidLicenseResponse = ERROR_DRM_VENDOR_MIN + 68,
kInvalidLicenseType = ERROR_DRM_VENDOR_MIN + 69,
kParameterNull = ERROR_DRM_VENDOR_MIN + 70,
kInvalidParametersLic1 = ERROR_DRM_VENDOR_MIN + 74,
kInvalidParametersLic2 = ERROR_DRM_VENDOR_MIN + 75,
kInvalidProvisioningParam1 = ERROR_DRM_VENDOR_MIN + 76,
kInvalidProvisioningParam2 = ERROR_DRM_VENDOR_MIN + 77,
kInvalidProvisioningReqParam1 = ERROR_DRM_VENDOR_MIN + 78,
kInvalidProvisioningReqParam2 = ERROR_DRM_VENDOR_MIN + 79,
kInvalidQueryKey = ERROR_DRM_VENDOR_MIN + 80,
kInvalidSessionId = ERROR_DRM_VENDOR_MIN + 81,
kKeyRequestError1 = ERROR_DRM_VENDOR_MIN + 82,
kKeySizeError1 = ERROR_DRM_VENDOR_MIN + 84,
kKeySetIdNotFound1 = ERROR_DRM_VENDOR_MIN + 85,
kKeySetIdNotFound2 = ERROR_DRM_VENDOR_MIN + 86,
kKeySetIdNotFound3 = ERROR_DRM_VENDOR_MIN + 87,
kLicenseIdNotFound = ERROR_DRM_VENDOR_MIN + 88,
kLicenseParserInitError = ERROR_DRM_VENDOR_MIN + 89,
kLicenseParserNotInitialized1 = ERROR_DRM_VENDOR_MIN + 90,
kLicenseParserNotInitialized2 = ERROR_DRM_VENDOR_MIN + 91,
kLicenseParserNotInitialized3 = ERROR_DRM_VENDOR_MIN + 92,
kLicenseResponseNotSigned = ERROR_DRM_VENDOR_MIN + 93,
kLicenseResponseParseError1 = ERROR_DRM_VENDOR_MIN + 94,
kLicenseResponseParseError2 = ERROR_DRM_VENDOR_MIN + 95,
kLicenseResponseParseError3 = ERROR_DRM_VENDOR_MIN + 96,
kLoadKeyError = ERROR_DRM_VENDOR_MIN + 97,
kNoContentKey = ERROR_DRM_VENDOR_MIN + 98,
kProvisioningGetKeyboxError = ERROR_DRM_VENDOR_MIN + 99,
kRefreshKeysError = ERROR_DRM_VENDOR_MIN + 100,
kRemoveAllUsageInfoError1 = ERROR_DRM_VENDOR_MIN + 101,
kRemoveAllUsageInfoError2 = ERROR_DRM_VENDOR_MIN + 102,
kReleaseKeyError = ERROR_DRM_VENDOR_MIN + 103,
kReleaseKeyRequestError = ERROR_DRM_VENDOR_MIN + 104,
kReleaseLicenseError1 = ERROR_DRM_VENDOR_MIN + 105,
kReleaseLicenseError2 = ERROR_DRM_VENDOR_MIN + 106,
kReleaseUsageInfoError = ERROR_DRM_VENDOR_MIN + 107,
kRenewKeyError1 = ERROR_DRM_VENDOR_MIN + 108,
kRenewKeyError2 = ERROR_DRM_VENDOR_MIN + 109,
kLicenseRenewalSigningError = ERROR_DRM_VENDOR_MIN + 110,
kRestoreOfflineLicenseError1 = ERROR_DRM_VENDOR_MIN + 111,
kRestoreOfflineLicenseError2 = ERROR_DRM_VENDOR_MIN + 112,
kNotInitializedError = ERROR_DRM_VENDOR_MIN + 113,
kReinitError = ERROR_DRM_VENDOR_MIN + 114,
kSessionInitGetKeyboxError = ERROR_DRM_VENDOR_MIN + 115,
kSessionNotFound1 = ERROR_DRM_VENDOR_MIN + 116,
kSessionNotFound2 = ERROR_DRM_VENDOR_MIN + 117,
kSessionNotFound3 = ERROR_DRM_VENDOR_MIN + 118,
kSessionNotFound4 = ERROR_DRM_VENDOR_MIN + 119,
kSessionNotFound5 = ERROR_DRM_VENDOR_MIN + 120,
kSessionNotFound6 = ERROR_DRM_VENDOR_MIN + 121,
kSessionNotFound7 = ERROR_DRM_VENDOR_MIN + 122,
kSessionNotFound8 = ERROR_DRM_VENDOR_MIN + 123,
kSessionNotFound9 = ERROR_DRM_VENDOR_MIN + 124,
kSessionNotFound10 = ERROR_DRM_VENDOR_MIN + 125,
kSessionKeysNotFound = ERROR_DRM_VENDOR_MIN + 126,
kSessionNotFoundForDecrypt = ERROR_DRM_VENDOR_MIN + 127,
kSignatureNotFound = ERROR_DRM_VENDOR_MIN + 128,
kStoreLicenseError1 = ERROR_DRM_VENDOR_MIN + 129,
kStoreLicenseError2 = ERROR_DRM_VENDOR_MIN + 130,
kStoreLicenseError3 = ERROR_DRM_VENDOR_MIN + 131,
kStoreUsageInfoError = ERROR_DRM_VENDOR_MIN + 132,
kUnprovisioningError1 = ERROR_DRM_VENDOR_MIN + 133,
kUnprovisioningError2 = ERROR_DRM_VENDOR_MIN + 134,
kUnprovisioningError3 = ERROR_DRM_VENDOR_MIN + 135,
kUnprovisioningError4 = ERROR_DRM_VENDOR_MIN + 136,
kUnsupportedInitData = ERROR_DRM_VENDOR_MIN + 137,
kUsageInfoNotFound = ERROR_DRM_VENDOR_MIN + 138,
kLicenseRenewalServiceCertificateGenerationError = ERROR_DRM_VENDOR_MIN + 139,
kParseServiceCertificateError = ERROR_DRM_VENDOR_MIN + 140,
kServiceCertificateTypeError = ERROR_DRM_VENDOR_MIN + 141,
kClientIdGenerateRandomError = ERROR_DRM_VENDOR_MIN + 142,
kClientIdAesInitError = ERROR_DRM_VENDOR_MIN + 143,
kClientIdAesEncryptError = ERROR_DRM_VENDOR_MIN + 144,
kClientIdRsaInitError = ERROR_DRM_VENDOR_MIN + 145,
kClientIdRsaEncryptError = ERROR_DRM_VENDOR_MIN + 146,
kEmptyProvisioningCertificate2 = ERROR_DRM_VENDOR_MIN + 148,
kLicenseParserNotInitialized4 = ERROR_DRM_VENDOR_MIN + 149,
kInvalidParametersLic3 = ERROR_DRM_VENDOR_MIN + 150,
kInvalidParametersLic4 = ERROR_DRM_VENDOR_MIN + 151,
kInvalidParametersLic6 = ERROR_DRM_VENDOR_MIN + 152,
kInvalidParametersLic7 = ERROR_DRM_VENDOR_MIN + 153,
kLicenseRequestServiceCertificateGenerationError = ERROR_DRM_VENDOR_MIN + 155,
kCencInitDataUnavailable = ERROR_DRM_VENDOR_MIN + 156,
kPrepareCencContentIdFailed = ERROR_DRM_VENDOR_MIN + 157,
kWebmInitDataUnavailable = ERROR_DRM_VENDOR_MIN + 158,
kPrepareWebmContentIdFailed = ERROR_DRM_VENDOR_MIN + 159,
kUnsupportedInitDataFormat = ERROR_DRM_VENDOR_MIN + 160,
kLicenseRequestNonceGenerationError = ERROR_DRM_VENDOR_MIN + 161,
kLicenseRequestSigningError = ERROR_DRM_VENDOR_MIN + 162,
kEmptyLicenseRequest = ERROR_DRM_VENDOR_MIN + 163,
kDuplicateSessionIdSpecified = ERROR_DRM_VENDOR_MIN + 164,
kLicenseRenewalProhibited = ERROR_DRM_VENDOR_MIN + 165,
kOfflineLicenseProhibited = ERROR_DRM_VENDOR_MIN + 166,
kStorageProhibited = ERROR_DRM_VENDOR_MIN + 167,
kEmptyKeySetIdEng5 = ERROR_DRM_VENDOR_MIN + 168,
kSessionNotFound11 = ERROR_DRM_VENDOR_MIN + 169,
kLoadUsageInfoFileError = ERROR_DRM_VENDOR_MIN + 170,
kLoadUsageInfoMissing = ERROR_DRM_VENDOR_MIN + 171,
kSessionFileHandleInitError = ERROR_DRM_VENDOR_MIN + 172,
kIncorrectCryptoMode = ERROR_DRM_VENDOR_MIN + 173,
kInvalidParametersEng5 = ERROR_DRM_VENDOR_MIN + 174,
kSessionNotFound12 = ERROR_DRM_VENDOR_MIN + 175,
kKeyNotFound1 = ERROR_DRM_VENDOR_MIN + 176,
kKeyNotFound2 = ERROR_DRM_VENDOR_MIN + 177,
kKeyConflict1 = ERROR_DRM_VENDOR_MIN + 178,
kSessionNotFound13 = ERROR_DRM_VENDOR_MIN + 186,
kSessionNotFound14 = ERROR_DRM_VENDOR_MIN + 187,
kSessionNotFound15 = ERROR_DRM_VENDOR_MIN + 188,
kSessionNotFound16 = ERROR_DRM_VENDOR_MIN + 189,
kKeyNotFound3 = ERROR_DRM_VENDOR_MIN + 190,
kKeyNotFound4 = ERROR_DRM_VENDOR_MIN + 191,
kKeyNotFound5 = ERROR_DRM_VENDOR_MIN + 192,
kKeyNotFound6 = ERROR_DRM_VENDOR_MIN + 193,
kInvalidSession1 = ERROR_DRM_VENDOR_MIN + 194,
kNoDeviceKey1 = ERROR_DRM_VENDOR_MIN + 195,
kNoContentKey2 = ERROR_DRM_VENDOR_MIN + 196,
kInsufficientCryptoResources2 = ERROR_DRM_VENDOR_MIN + 197,
kInvalidParametersEng13 = ERROR_DRM_VENDOR_MIN + 198,
kInvalidParametersEng14 = ERROR_DRM_VENDOR_MIN + 199,
kInvalidParametersEng15 = ERROR_DRM_VENDOR_MIN + 200,
kInvalidParametersEng16 = ERROR_DRM_VENDOR_MIN + 201,
kClientIdentificationTokenError1 = ERROR_DRM_VENDOR_MIN + 203,
kClientIdentificationTokenError2 = ERROR_DRM_VENDOR_MIN + 204,
kUnknownSelectKeyError1 = ERROR_DRM_VENDOR_MIN + 206,
kUnknownSelectKeyError2 = ERROR_DRM_VENDOR_MIN + 207,
kCreateUsageTableError = ERROR_DRM_VENDOR_MIN + 208,
kLoadUsageHeaderGenerationSkew = ERROR_DRM_VENDOR_MIN + 209,
kLoadUsageHeaderSignatureFailure = ERROR_DRM_VENDOR_MIN + 210,
kLoadUsageHeaderBadMagic = ERROR_DRM_VENDOR_MIN + 211,
kLoadUsageHeaderUnknownError = ERROR_DRM_VENDOR_MIN + 212,
kInsufficientCryptoResources3 = ERROR_DRM_VENDOR_MIN + 215,
kCreateUsageEntryUnknownError = ERROR_DRM_VENDOR_MIN + 216,
kLoadUsageEntryGenerationSkew = ERROR_DRM_VENDOR_MIN + 217,
kLoadUsageEntrySignatureFailure = ERROR_DRM_VENDOR_MIN + 218,
kLoadUsageEntryUnknownError = ERROR_DRM_VENDOR_MIN + 219,
kUpdateUsageEntryUnknownError = ERROR_DRM_VENDOR_MIN + 222,
kShrinkUsageTableHeaderUnknownError = ERROR_DRM_VENDOR_MIN + 224,
kMoveUsageEntryUnknownError = ERROR_DRM_VENDOR_MIN + 225,
kCopyOldUsageEntryUnknownError = ERROR_DRM_VENDOR_MIN + 226,
kInvalidParametersEng22 = ERROR_DRM_VENDOR_MIN + 227,
kListLicenseError1 = ERROR_DRM_VENDOR_MIN + 228,
kListLicenseError2 = ERROR_DRM_VENDOR_MIN + 229,
kInvalidParametersEng23 = ERROR_DRM_VENDOR_MIN + 230,
kUsageInformationSupportFailed = ERROR_DRM_VENDOR_MIN + 231,
kUsageSupportGetApiFailed = ERROR_DRM_VENDOR_MIN + 232,
kUnexpectedEmptyUsageEntry = ERROR_DRM_VENDOR_MIN + 233,
kInvalidUsageEntryNumberModification = ERROR_DRM_VENDOR_MIN + 234,
kUsageInvalidNewEntry = ERROR_DRM_VENDOR_MIN + 235,
kUsageInvalidParameters1 = ERROR_DRM_VENDOR_MIN + 236,
kUsageGetEntryRetrieveLicenseFailed = ERROR_DRM_VENDOR_MIN + 237,
kUsageGetEntryRetrieveUsageInfoFailed = ERROR_DRM_VENDOR_MIN + 238,
kUsageGetEntryRetrieveInvalidStorageType = ERROR_DRM_VENDOR_MIN + 239,
kUsageEntryNumberMismatch = ERROR_DRM_VENDOR_MIN + 240,
kUsageStoreLicenseFailed = ERROR_DRM_VENDOR_MIN + 241,
kUsageStoreUsageInfoFailed = ERROR_DRM_VENDOR_MIN + 242,
kUsageInvalidLoadEntry = ERROR_DRM_VENDOR_MIN + 243,
kRemoveAllUsageInfoError5 = ERROR_DRM_VENDOR_MIN + 245,
kReleaseUsageInfoFailed = ERROR_DRM_VENDOR_MIN + 246,
kIncorrectUsageSupportType1 = ERROR_DRM_VENDOR_MIN + 247,
kIncorrectUsageSupportType2 = ERROR_DRM_VENDOR_MIN + 248,
kNoUsageEntries = ERROR_DRM_VENDOR_MIN + 249,
kListUsageError1 = ERROR_DRM_VENDOR_MIN + 250,
kListUsageError2 = ERROR_DRM_VENDOR_MIN + 251,
kDeleteUsageError1 = ERROR_DRM_VENDOR_MIN + 252,
kDeleteUsageError2 = ERROR_DRM_VENDOR_MIN + 253,
kDeleteUsageError3 = ERROR_DRM_VENDOR_MIN + 254,
kPrivacyModeError1 = ERROR_DRM_VENDOR_MIN + 255,
kPrivacyModeError2 = ERROR_DRM_VENDOR_MIN + 256,
kPrivacyModeError3 = ERROR_DRM_VENDOR_MIN + 257,
kEmptyResponseError1 = ERROR_DRM_VENDOR_MIN + 258,
kInvalidParametersEng24 = ERROR_DRM_VENDOR_MIN + 259,
kParseResponseError1 = ERROR_DRM_VENDOR_MIN + 260,
kParseResponseError2 = ERROR_DRM_VENDOR_MIN + 261,
kParseResponseError3 = ERROR_DRM_VENDOR_MIN + 262,
kParseResponseError4 = ERROR_DRM_VENDOR_MIN + 263,
kUsageStoreEntryRetrieveLicenseFailed = ERROR_DRM_VENDOR_MIN + 264,
kUsageStoreEntryRetrieveUsageInfoFailed = ERROR_DRM_VENDOR_MIN + 265,
kUsageStoreEntryRetrieveInvalidStorageType = ERROR_DRM_VENDOR_MIN + 266,
kRemoveAllUsageInfoError6 = ERROR_DRM_VENDOR_MIN + 267,
kRemoveAllUsageInfoError7 = ERROR_DRM_VENDOR_MIN + 268,
kCertProvisioningEmptyServiceCertificate = ERROR_DRM_VENDOR_MIN + 270,
kLoadSystemIdError = ERROR_DRM_VENDOR_MIN + 271,
kInsufficientCryptoResources4 = ERROR_DRM_VENDOR_MIN + 272,
kInsufficientCryptoResources5 = ERROR_DRM_VENDOR_MIN + 273,
kRemoveUsageInfoError1 = ERROR_DRM_VENDOR_MIN + 274,
kRemoveUsageInfoError2 = ERROR_DRM_VENDOR_MIN + 275,
kRemoveUsageInfoError3 = ERROR_DRM_VENDOR_MIN + 276,
kInsufficientCryptoResources6 = ERROR_DRM_VENDOR_MIN + 277,
kNotAnEntitlementSession = ERROR_DRM_VENDOR_MIN + 278,
kLoadEntitledContentKeysError = ERROR_DRM_VENDOR_MIN + 279,
kGetProvisioningError = ERROR_DRM_VENDOR_MIN + 280,
kDeviceCannotReprovision = ERROR_DRM_VENDOR_MIN + 281,
kKeySizeError2 = ERROR_DRM_VENDOR_MIN + 282,
kSetDecryptHashError = ERROR_DRM_VENDOR_MIN + 283,
kGetDecryptHashError = ERROR_DRM_VENDOR_MIN + 284,
kInvalidDecryptHashFormat = ERROR_DRM_VENDOR_MIN + 285,
kEmptyLicenseRequest2 = ERROR_DRM_VENDOR_MIN + 286,
kEmptyLicenseRequest3 = ERROR_DRM_VENDOR_MIN + 287,
kEmptyLicenseResponse3 = ERROR_DRM_VENDOR_MIN + 288,
kEmptyLicenseResponse4 = ERROR_DRM_VENDOR_MIN + 289,
kParseRequestError1 = ERROR_DRM_VENDOR_MIN + 290,
kParseRequestError2 = ERROR_DRM_VENDOR_MIN + 291,
kInvalidLicenseRequestType1 = ERROR_DRM_VENDOR_MIN + 292,
kInvalidLicenseRequestType2 = ERROR_DRM_VENDOR_MIN + 293,
kLicenseResponseParseError4 = ERROR_DRM_VENDOR_MIN + 294,
kLicenseResponseParseError5 = ERROR_DRM_VENDOR_MIN + 295,
kInvalidLicenseType2 = ERROR_DRM_VENDOR_MIN + 296,
kSignatureNotFound2 = ERROR_DRM_VENDOR_MIN + 297,
kSessionKeysNotFound2 = ERROR_DRM_VENDOR_MIN + 298,
kUsageInvalidParameters2 = ERROR_DRM_VENDOR_MIN + 299,
kCoreMessageNotFound = ERROR_DRM_VENDOR_MIN + 300,
kInvalidSession2 = ERROR_DRM_VENDOR_MIN + 301,
kLoadProvisioningError = ERROR_DRM_VENDOR_MIN + 302,
kLoadLicenseError = ERROR_DRM_VENDOR_MIN + 303,
kLoadRenewalError = ERROR_DRM_VENDOR_MIN + 304,
kCannotDecryptZeroSamples = ERROR_DRM_VENDOR_MIN + 305,
kCannotDecryptZeroSubsamples = ERROR_DRM_VENDOR_MIN + 306,
kSampleAndSubsampleSizeMismatch = ERROR_DRM_VENDOR_MIN + 307,
kInvalidIvSize = ERROR_DRM_VENDOR_MIN + 308,
kLoadUsageEntryInvalidSession = ERROR_DRM_VENDOR_MIN + 309,
kMoveUsageEntryDestinationInUse = ERROR_DRM_VENDOR_MIN + 310,
kShrinkUsageTableHeaderEntryInUse = ERROR_DRM_VENDOR_MIN + 311,
kLicenseUsageEntryMissing = ERROR_DRM_VENDOR_MIN + 312,
// 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 + 312,
// Used by crypto test mode
kErrorTestMode = ERROR_DRM_VENDOR_MAX,
};
static_assert(static_cast<uint32_t>(kErrorWVDrmMaxErrorUsed) <=
static_cast<uint32_t>(ERROR_DRM_VENDOR_MAX),
"");
} // namespace wvdrm
#endif // WV_ERRORS_H_