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 CdmUsageEntry = std::string;
|
||||
|
||||
enum CdmKeyRequestType {
|
||||
enum CdmKeyRequestType : uint32_t {
|
||||
kKeyRequestTypeUnknown,
|
||||
kKeyRequestTypeInitial,
|
||||
kKeyRequestTypeRenewal,
|
||||
@@ -43,13 +43,13 @@ enum CdmKeyRequestType {
|
||||
kKeyRequestTypeUpdate,
|
||||
};
|
||||
|
||||
enum CdmOfflineLicenseState {
|
||||
enum CdmOfflineLicenseState : int32_t {
|
||||
kLicenseStateActive,
|
||||
kLicenseStateReleasing,
|
||||
kLicenseStateUnknown,
|
||||
};
|
||||
|
||||
enum CdmResponseType {
|
||||
enum CdmResponseType : int32_t {
|
||||
NO_ERROR = 0,
|
||||
UNKNOWN_ERROR = 1,
|
||||
KEY_ADDED = 2,
|
||||
@@ -421,7 +421,7 @@ enum CdmResponseType {
|
||||
// * android/include_hidl/mapErrors-inl.h
|
||||
};
|
||||
|
||||
enum CdmKeyStatus {
|
||||
enum CdmKeyStatus : int32_t {
|
||||
kKeyStatusKeyUnknown,
|
||||
kKeyStatusUsable,
|
||||
kKeyStatusExpired,
|
||||
@@ -432,7 +432,7 @@ enum CdmKeyStatus {
|
||||
};
|
||||
using CdmKeyStatusMap = std::map<KeyId, CdmKeyStatus>;
|
||||
|
||||
enum CdmLicenseType {
|
||||
enum CdmLicenseType : int32_t {
|
||||
kLicenseTypeOffline,
|
||||
kLicenseTypeStreaming,
|
||||
kLicenseTypeRelease,
|
||||
@@ -446,48 +446,51 @@ enum CdmLicenseType {
|
||||
// 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
|
||||
// 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,
|
||||
kSecurityLevelL1,
|
||||
kSecurityLevelL2,
|
||||
kSecurityLevelL3,
|
||||
kSecurityLevelUnknown
|
||||
kSecurityLevelUnknown,
|
||||
};
|
||||
|
||||
enum CdmCertificateType {
|
||||
enum CdmCertificateType : int32_t {
|
||||
kCertificateWidevine,
|
||||
kCertificateX509,
|
||||
};
|
||||
|
||||
enum CdmHlsMethod {
|
||||
enum CdmHlsMethod : int32_t {
|
||||
kHlsMethodNone,
|
||||
kHlsMethodAes128,
|
||||
kHlsMethodSampleAes,
|
||||
};
|
||||
|
||||
enum CdmCipherMode {
|
||||
enum CdmCipherMode : int32_t {
|
||||
kCipherModeCtr,
|
||||
kCipherModeCbc,
|
||||
};
|
||||
|
||||
enum CdmEncryptionAlgorithm {
|
||||
enum CdmEncryptionAlgorithm : int32_t {
|
||||
kEncryptionAlgorithmUnknown,
|
||||
kEncryptionAlgorithmAesCbc128
|
||||
kEncryptionAlgorithmAesCbc128,
|
||||
};
|
||||
|
||||
enum CdmSigningAlgorithm {
|
||||
enum CdmSigningAlgorithm : int32_t {
|
||||
kSigningAlgorithmUnknown,
|
||||
kSigningAlgorithmHmacSha256
|
||||
kSigningAlgorithmHmacSha256,
|
||||
};
|
||||
|
||||
enum CdmClientTokenType {
|
||||
enum CdmClientTokenType : int32_t {
|
||||
kClientTokenKeybox,
|
||||
kClientTokenDrmCert,
|
||||
kClientTokenOemCert,
|
||||
@@ -500,13 +503,13 @@ enum CdmClientTokenType {
|
||||
// persisted in non-secure storage but are loaded and unloaded from
|
||||
// the TEE during use (OEMCrypto v13+)
|
||||
// kUnknownUsageSupport - usage support type is uninitialized or unavailable
|
||||
enum CdmUsageSupportType {
|
||||
enum CdmUsageSupportType : int32_t {
|
||||
kNonSecureUsageSupport,
|
||||
kUsageEntrySupport,
|
||||
kUnknownUsageSupport,
|
||||
};
|
||||
|
||||
enum CdmUsageEntryStorageType {
|
||||
enum CdmUsageEntryStorageType : int32_t {
|
||||
kStorageLicense,
|
||||
kStorageUsageInfo,
|
||||
kStorageTypeUnknown,
|
||||
@@ -546,7 +549,7 @@ struct CdmUsageEntryInfo {
|
||||
}
|
||||
};
|
||||
|
||||
enum CdmKeySecurityLevel {
|
||||
enum CdmKeySecurityLevel : int32_t {
|
||||
kKeySecurityLevelUnset,
|
||||
kSoftwareSecureCrypto,
|
||||
kSoftwareSecureDecode,
|
||||
|
||||
@@ -233,7 +233,7 @@ TEST_F(WvCdmEngineMetricsImplTest, GenerateKeyRequest) {
|
||||
}
|
||||
|
||||
TEST_F(WvCdmEngineMetricsImplTest, AddKey) {
|
||||
CdmLicenseType license_type;
|
||||
CdmLicenseType license_type = {};
|
||||
CdmKeySetId key_set_id;
|
||||
|
||||
EXPECT_CALL(*test_cdm_metrics_engine_,
|
||||
|
||||
Reference in New Issue
Block a user