Snap for 6245101 from 5f9d48b133 to sc-release

Change-Id: I56e4e73b4cfca9876e27fdc255b791124e6e33b6
This commit is contained in:
android-build-team Robot
2020-02-28 03:01:59 +00:00
3 changed files with 34 additions and 28 deletions

View File

@@ -457,19 +457,25 @@ CdmResponseType CdmLicense::PrepareKeyUpdateRequest(
current_license->set_seconds_since_last_played(seconds_since_last_played);
}
// Get/set the nonce. This value will be reflected in the Key Control Block
// of the license response.
uint32_t nonce;
CdmResponseType status = crypto_session_->GenerateNonce(&nonce);
switch (status) {
case NO_ERROR:
break;
case SESSION_LOST_STATE_ERROR:
case SYSTEM_INVALIDATED_ERROR:
return status;
default:
return LICENSE_RENEWAL_NONCE_GENERATION_ERROR;
uint32_t api_version = 0;
if (!crypto_session_->GetApiVersion(&api_version)) {
LOGW("Unknown API Version");
api_version = 15;
}
uint32_t nonce = 0;
if (api_version < 16) {
// For a pre-v16 license, get/set the nonce. This value will be reflected
// in the Key Control Block of the license response.
const CdmResponseType status = crypto_session_->GenerateNonce(&nonce);
switch (status) {
case NO_ERROR:
break;
case SESSION_LOST_STATE_ERROR:
case SYSTEM_INVALIDATED_ERROR:
return status;
default:
return LICENSE_RENEWAL_NONCE_GENERATION_ERROR;
}
}
license_request.set_key_control_nonce(nonce);
LOGD("nonce = %u", nonce);
@@ -482,7 +488,7 @@ CdmResponseType CdmLicense::PrepareKeyUpdateRequest(
// Construct signature and core message.
std::string core_message;
std::string license_request_signature;
status = crypto_session_->PrepareAndSignRenewalRequest(
const CdmResponseType status = crypto_session_->PrepareAndSignRenewalRequest(
serialized_license_req, &core_message, &license_request_signature);
if (status != NO_ERROR) return status;

View File

@@ -437,7 +437,7 @@ class MockCryptoSession : public TestCryptoSession {
// Fake method for testing. Having an EXPECT_CALL causes complexities
// for getting table capacity during initialization.
virtual bool GetMaximumUsageTableEntries(SecurityLevel security_level,
virtual bool GetMaximumUsageTableEntries(SecurityLevel /*security_level*/,
size_t* number_of_entries) {
if (number_of_entries == nullptr || !maximum_usage_table_entries_set_)
return false;

View File

@@ -1671,7 +1671,7 @@ class DecryptCallbackTester {
const CdmKeyStatusMap& /* keys_status */,
bool /* has_new_usable_key */) {
EXPECT_TRUE(decryptor_);
EXPECT_TRUE(sub_sample_info_ != nullptr);
ASSERT_NE(sub_sample_info_, nullptr);
std::vector<uint8_t> decrypt_buffer(sub_sample_info_->encrypt_data.size());
CdmDecryptionParameters decryption_parameters(
@@ -4018,7 +4018,7 @@ TEST_F(WvCdmRequestLicenseTest, RemoveCorruptedUsageInfoTest) {
EXPECT_LT(4, file_size);
std::unique_ptr<File> file = file_system.Open(
usage_info_not_empty_app_id_file_name, FileSystem::kReadOnly);
EXPECT_TRUE(nullptr != file);
ASSERT_NE(file, nullptr);
std::string file_data;
file_data.resize(file_size);
ssize_t bytes = file->Read(&file_data[0], file_data.size());
@@ -4029,7 +4029,7 @@ TEST_F(WvCdmRequestLicenseTest, RemoveCorruptedUsageInfoTest) {
memset(&file_data[0] + bytes - 4, 0, 4);
file = file_system.Open(usage_info_not_empty_app_id_file_name,
FileSystem::kCreate | FileSystem::kTruncate);
EXPECT_TRUE(nullptr != file);
ASSERT_NE(file, nullptr);
bytes = file->Write(file_data.data(), file_data.size());
EXPECT_EQ(file_size, bytes);
@@ -4052,7 +4052,7 @@ TEST_F(WvCdmRequestLicenseTest, RemoveCorruptedUsageInfoTest) {
EXPECT_LT(4, file_size);
file = file_system.Open(usage_info_empty_app_id_file_name,
FileSystem::kReadOnly);
EXPECT_TRUE(nullptr != file);
ASSERT_NE(file, nullptr);
file_data.resize(file_size);
bytes = file->Read(&file_data[0], file_data.size());
EXPECT_EQ(file_size, bytes);
@@ -4062,7 +4062,7 @@ TEST_F(WvCdmRequestLicenseTest, RemoveCorruptedUsageInfoTest) {
memset(&file_data[0] + bytes - 4, 0, 4);
file = file_system.Open(usage_info_empty_app_id_file_name,
FileSystem::kCreate | FileSystem::kTruncate);
EXPECT_TRUE(nullptr != file);
ASSERT_NE(file, nullptr);
bytes = file->Write(file_data.data(), file_data.size());
EXPECT_EQ(file_size, bytes);
@@ -4154,7 +4154,7 @@ TEST_F(WvCdmRequestLicenseTest, RemoveCorruptedUsageInfoTest2) {
EXPECT_LT(4, file_size);
std::unique_ptr<File> file = file_system.Open(
usage_info_not_empty_app_id_file_name, FileSystem::kReadOnly);
EXPECT_TRUE(nullptr != file);
ASSERT_NE(file, nullptr);
std::string file_data;
file_data.resize(file_size);
ssize_t bytes = file->Read(&file_data[0], file_data.size());
@@ -4173,7 +4173,7 @@ TEST_F(WvCdmRequestLicenseTest, RemoveCorruptedUsageInfoTest2) {
file = file_system.Open(usage_info_not_empty_app_id_file_name,
FileSystem::kCreate | FileSystem::kTruncate);
EXPECT_TRUE(nullptr != file);
ASSERT_NE(file, nullptr);
bytes = file->Write(file_data.data(), file_data.size());
EXPECT_EQ(file_size, bytes);
@@ -4196,7 +4196,7 @@ TEST_F(WvCdmRequestLicenseTest, RemoveCorruptedUsageInfoTest2) {
EXPECT_LT(4, file_size);
file = file_system.Open(usage_info_empty_app_id_file_name,
FileSystem::kReadOnly);
EXPECT_TRUE(nullptr != file);
ASSERT_NE(file, nullptr);
file_data.resize(file_size);
bytes = file->Read(&file_data[0], file_data.size());
EXPECT_EQ(file_size, bytes);
@@ -4212,7 +4212,7 @@ TEST_F(WvCdmRequestLicenseTest, RemoveCorruptedUsageInfoTest2) {
file = file_system.Open(usage_info_empty_app_id_file_name,
FileSystem::kCreate | FileSystem::kTruncate);
EXPECT_TRUE(nullptr != file);
ASSERT_NE(file, nullptr);
bytes = file->Write(file_data.data(), file_data.size());
EXPECT_EQ(file_size, bytes);
@@ -4430,7 +4430,7 @@ TEST_F(WvCdmRequestLicenseTest, UsageRecoveryTest) {
EXPECT_LT(4, file_size);
std::unique_ptr<File> file =
file_system.Open(usage_info_file_name, FileSystem::kReadOnly);
EXPECT_TRUE(nullptr != file);
ASSERT_NE(file, nullptr);
std::string file_data;
file_data.resize(file_size);
ssize_t bytes = file->Read(&file_data[0], file_data.size());
@@ -4440,7 +4440,7 @@ TEST_F(WvCdmRequestLicenseTest, UsageRecoveryTest) {
memset(&file_data[0] + bytes - 4, 0, 4);
file = file_system.Open(usage_info_file_name,
FileSystem::kCreate | FileSystem::kTruncate);
EXPECT_TRUE(nullptr != file);
ASSERT_NE(file, nullptr);
bytes = file->Write(file_data.data(), file_data.size());
EXPECT_EQ(file_size, bytes);
@@ -4574,7 +4574,7 @@ TEST_F(WvCdmRequestLicenseTest, UsageRemoveSecureStopTest) {
kDefaultCdmIdentifier, &secure_stop_ids));
EXPECT_EQ(ArraySize(kUsageLicenseTestVector1), secure_stop_ids.size());
for (size_t i = 0; i < ArraySize(kUsageLicenseTestVector1); ++i) {
for (size_t i = 0; i < secure_stop_ids.size(); ++i) {
EXPECT_EQ(NO_ERROR, decryptor_->RemoveUsageInfo(
kDefaultCdmIdentifier.app_package_name,
kDefaultCdmIdentifier, secure_stop_ids[i]));
@@ -4590,7 +4590,7 @@ TEST_F(WvCdmRequestLicenseTest, UsageRemoveSecureStopTest) {
kExampleIdentifier, &secure_stop_ids));
EXPECT_EQ(ArraySize(kUsageLicenseTestVector2), secure_stop_ids.size());
for (size_t i = 0; i < ArraySize(kUsageLicenseTestVector2); ++i) {
for (size_t i = 0; i < secure_stop_ids.size(); ++i) {
EXPECT_EQ(NO_ERROR, decryptor_->RemoveUsageInfo(
kExampleIdentifier.app_package_name,
kExampleIdentifier, secure_stop_ids[i]));