Fix Undefined Behavior Around Enums am: 7f028d25c8
Original change: https://googleplex-android-review.googlesource.com/c/platform/vendor/widevine/+/12404605 Change-Id: If5509b1909d499ba484e6697895458957a03c923
This commit is contained in:
@@ -34,7 +34,7 @@ using CdmProvisioningResponse = std::string;
|
|||||||
using CdmUsageTableHeader = std::string;
|
using CdmUsageTableHeader = std::string;
|
||||||
using CdmUsageEntry = std::string;
|
using CdmUsageEntry = std::string;
|
||||||
|
|
||||||
enum CdmKeyRequestType {
|
enum CdmKeyRequestType : uint32_t {
|
||||||
kKeyRequestTypeUnknown,
|
kKeyRequestTypeUnknown,
|
||||||
kKeyRequestTypeInitial,
|
kKeyRequestTypeInitial,
|
||||||
kKeyRequestTypeRenewal,
|
kKeyRequestTypeRenewal,
|
||||||
@@ -43,13 +43,13 @@ enum CdmKeyRequestType {
|
|||||||
kKeyRequestTypeUpdate,
|
kKeyRequestTypeUpdate,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmOfflineLicenseState {
|
enum CdmOfflineLicenseState : int32_t {
|
||||||
kLicenseStateActive,
|
kLicenseStateActive,
|
||||||
kLicenseStateReleasing,
|
kLicenseStateReleasing,
|
||||||
kLicenseStateUnknown,
|
kLicenseStateUnknown,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmResponseType {
|
enum CdmResponseType : int32_t {
|
||||||
NO_ERROR = 0,
|
NO_ERROR = 0,
|
||||||
UNKNOWN_ERROR = 1,
|
UNKNOWN_ERROR = 1,
|
||||||
KEY_ADDED = 2,
|
KEY_ADDED = 2,
|
||||||
@@ -421,7 +421,7 @@ enum CdmResponseType {
|
|||||||
// * android/include_hidl/mapErrors-inl.h
|
// * android/include_hidl/mapErrors-inl.h
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmKeyStatus {
|
enum CdmKeyStatus : int32_t {
|
||||||
kKeyStatusKeyUnknown,
|
kKeyStatusKeyUnknown,
|
||||||
kKeyStatusUsable,
|
kKeyStatusUsable,
|
||||||
kKeyStatusExpired,
|
kKeyStatusExpired,
|
||||||
@@ -432,7 +432,7 @@ enum CdmKeyStatus {
|
|||||||
};
|
};
|
||||||
using CdmKeyStatusMap = std::map<KeyId, CdmKeyStatus>;
|
using CdmKeyStatusMap = std::map<KeyId, CdmKeyStatus>;
|
||||||
|
|
||||||
enum CdmLicenseType {
|
enum CdmLicenseType : int32_t {
|
||||||
kLicenseTypeOffline,
|
kLicenseTypeOffline,
|
||||||
kLicenseTypeStreaming,
|
kLicenseTypeStreaming,
|
||||||
kLicenseTypeRelease,
|
kLicenseTypeRelease,
|
||||||
@@ -446,48 +446,51 @@ enum CdmLicenseType {
|
|||||||
// on code review comments from go/wvgerrit/41860 this license type should not
|
// on code review comments from go/wvgerrit/41860 this license type should not
|
||||||
// be added. This type can be removed once it is no longer needed by
|
// be added. This type can be removed once it is no longer needed by
|
||||||
// GenerateKeyRequest.
|
// GenerateKeyRequest.
|
||||||
kLicenseTypeEmbeddedKeyData
|
kLicenseTypeEmbeddedKeyData,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmLicenseKeyType { kLicenseKeyTypeContent, kLicenseKeyTypeEntitlement };
|
enum CdmLicenseKeyType : int32_t {
|
||||||
|
kLicenseKeyTypeContent,
|
||||||
|
kLicenseKeyTypeEntitlement,
|
||||||
|
};
|
||||||
|
|
||||||
enum SecurityLevel { kLevelDefault, kLevel3 };
|
enum SecurityLevel : uint32_t { kLevelDefault, kLevel3 };
|
||||||
|
|
||||||
enum CdmSecurityLevel {
|
enum CdmSecurityLevel : int32_t {
|
||||||
kSecurityLevelUninitialized,
|
kSecurityLevelUninitialized,
|
||||||
kSecurityLevelL1,
|
kSecurityLevelL1,
|
||||||
kSecurityLevelL2,
|
kSecurityLevelL2,
|
||||||
kSecurityLevelL3,
|
kSecurityLevelL3,
|
||||||
kSecurityLevelUnknown
|
kSecurityLevelUnknown,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmCertificateType {
|
enum CdmCertificateType : int32_t {
|
||||||
kCertificateWidevine,
|
kCertificateWidevine,
|
||||||
kCertificateX509,
|
kCertificateX509,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmHlsMethod {
|
enum CdmHlsMethod : int32_t {
|
||||||
kHlsMethodNone,
|
kHlsMethodNone,
|
||||||
kHlsMethodAes128,
|
kHlsMethodAes128,
|
||||||
kHlsMethodSampleAes,
|
kHlsMethodSampleAes,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmCipherMode {
|
enum CdmCipherMode : int32_t {
|
||||||
kCipherModeCtr,
|
kCipherModeCtr,
|
||||||
kCipherModeCbc,
|
kCipherModeCbc,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmEncryptionAlgorithm {
|
enum CdmEncryptionAlgorithm : int32_t {
|
||||||
kEncryptionAlgorithmUnknown,
|
kEncryptionAlgorithmUnknown,
|
||||||
kEncryptionAlgorithmAesCbc128
|
kEncryptionAlgorithmAesCbc128,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmSigningAlgorithm {
|
enum CdmSigningAlgorithm : int32_t {
|
||||||
kSigningAlgorithmUnknown,
|
kSigningAlgorithmUnknown,
|
||||||
kSigningAlgorithmHmacSha256
|
kSigningAlgorithmHmacSha256,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmClientTokenType {
|
enum CdmClientTokenType : int32_t {
|
||||||
kClientTokenKeybox,
|
kClientTokenKeybox,
|
||||||
kClientTokenDrmCert,
|
kClientTokenDrmCert,
|
||||||
kClientTokenOemCert,
|
kClientTokenOemCert,
|
||||||
@@ -500,13 +503,13 @@ enum CdmClientTokenType {
|
|||||||
// persisted in non-secure storage but are loaded and unloaded from
|
// persisted in non-secure storage but are loaded and unloaded from
|
||||||
// the TEE during use (OEMCrypto v13+)
|
// the TEE during use (OEMCrypto v13+)
|
||||||
// kUnknownUsageSupport - usage support type is uninitialized or unavailable
|
// kUnknownUsageSupport - usage support type is uninitialized or unavailable
|
||||||
enum CdmUsageSupportType {
|
enum CdmUsageSupportType : int32_t {
|
||||||
kNonSecureUsageSupport,
|
kNonSecureUsageSupport,
|
||||||
kUsageEntrySupport,
|
kUsageEntrySupport,
|
||||||
kUnknownUsageSupport,
|
kUnknownUsageSupport,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmUsageEntryStorageType {
|
enum CdmUsageEntryStorageType : int32_t {
|
||||||
kStorageLicense,
|
kStorageLicense,
|
||||||
kStorageUsageInfo,
|
kStorageUsageInfo,
|
||||||
kStorageTypeUnknown,
|
kStorageTypeUnknown,
|
||||||
@@ -546,7 +549,7 @@ struct CdmUsageEntryInfo {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
enum CdmKeySecurityLevel {
|
enum CdmKeySecurityLevel : int32_t {
|
||||||
kKeySecurityLevelUnset,
|
kKeySecurityLevelUnset,
|
||||||
kSoftwareSecureCrypto,
|
kSoftwareSecureCrypto,
|
||||||
kSoftwareSecureDecode,
|
kSoftwareSecureDecode,
|
||||||
|
|||||||
@@ -233,7 +233,7 @@ TEST_F(WvCdmEngineMetricsImplTest, GenerateKeyRequest) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
TEST_F(WvCdmEngineMetricsImplTest, AddKey) {
|
TEST_F(WvCdmEngineMetricsImplTest, AddKey) {
|
||||||
CdmLicenseType license_type;
|
CdmLicenseType license_type = {};
|
||||||
CdmKeySetId key_set_id;
|
CdmKeySetId key_set_id;
|
||||||
|
|
||||||
EXPECT_CALL(*test_cdm_metrics_engine_,
|
EXPECT_CALL(*test_cdm_metrics_engine_,
|
||||||
|
|||||||
Reference in New Issue
Block a user