Snap for 8554681 from f4e2e9833d to tm-release

Change-Id: Id382b5ca192a85be4d6819f2bff9573520332167
This commit is contained in:
Android Build Coastguard Worker
2022-05-07 01:20:03 +00:00
3 changed files with 36 additions and 5 deletions

View File

@@ -243,15 +243,24 @@ class CdmEngine {
int* error_detail, int* error_detail,
CdmUsageInfo* usage_info); CdmUsageInfo* usage_info);
// Retrieve the usage info for the specified pst. // Retrieve usage info whose PST is specified by |ssid|
// Returns UNKNOWN_ERROR if no usage info was found. // If |error_detail| is not null, an additional error code may be provided
// id. If |error_detail| is not null, an additional error code may be provided
// in the event of an error. // in the event of an error.
virtual CdmResponseType GetUsageInfo(const std::string& app_id, virtual CdmResponseType GetUsageInfo(const std::string& app_id,
const CdmSecureStopId& ssid, const CdmSecureStopId& ssid,
int* error_detail, int* error_detail,
CdmUsageInfo* usage_info); CdmUsageInfo* usage_info);
// Retrieve usage info for a given security level and whose
// PST is specified by |ssid|.
// If |error_detail| is not null, an additional error code may be provided
// in the event of an error.
virtual CdmResponseType GetUsageInfo(const std::string& app_id,
const CdmSecureStopId& ssid,
RequestedSecurityLevel security_level,
int* error_detail,
CdmUsageInfo* usage_info);
// Remove all usage records for the current origin. // Remove all usage records for the current origin.
virtual CdmResponseType RemoveAllUsageInfo(const std::string& app_id, virtual CdmResponseType RemoveAllUsageInfo(const std::string& app_id,
CdmSecurityLevel security_level); CdmSecurityLevel security_level);

View File

@@ -1385,6 +1385,28 @@ CdmResponseType CdmEngine::GetUsageInfo(const std::string& app_id,
const CdmSecureStopId& ssid, const CdmSecureStopId& ssid,
int* error_detail, int* error_detail,
CdmUsageInfo* usage_info) { CdmUsageInfo* usage_info) {
// Try to find usage info at the default security level. If the
// security level is unprovisioned or we are unable to find it,
// try L3.
CdmResponseType status =
GetUsageInfo(app_id, ssid, kLevelDefault, error_detail, usage_info);
switch (status) {
case NEED_PROVISIONING:
case GET_USAGE_INFO_ERROR_1:
case GET_USAGE_INFO_ERROR_2:
case USAGE_INFO_NOT_FOUND:
status = GetUsageInfo(app_id, ssid, kLevel3, error_detail, usage_info);
return status;
default:
return status;
}
}
CdmResponseType CdmEngine::GetUsageInfo(const std::string& app_id,
const CdmSecureStopId& ssid,
RequestedSecurityLevel security_level,
int* error_detail,
CdmUsageInfo* usage_info) {
LOGI("app_id = %s, ssid = %s", IdToString(app_id), IdToString(ssid)); LOGI("app_id = %s, ssid = %s", IdToString(app_id), IdToString(ssid));
if (!usage_property_set_) { if (!usage_property_set_) {
usage_property_set_.reset(new UsagePropertySet()); usage_property_set_.reset(new UsagePropertySet());
@@ -1393,7 +1415,7 @@ CdmResponseType CdmEngine::GetUsageInfo(const std::string& app_id,
LOGE("Output |usage_info| is null"); LOGE("Output |usage_info| is null");
return PARAMETER_NULL; return PARAMETER_NULL;
} }
usage_property_set_->set_security_level(kLevelDefault); usage_property_set_->set_security_level(security_level);
usage_property_set_->set_app_id(app_id); usage_property_set_->set_app_id(app_id);
usage_session_.reset(new CdmSession(file_system_, metrics_->AddSession())); usage_session_.reset(new CdmSession(file_system_, metrics_->AddSession()));
CdmResponseType status = usage_session_->Init(usage_property_set_.get()); CdmResponseType status = usage_session_->Init(usage_property_set_.get());

View File

@@ -6014,7 +6014,7 @@ TEST(VersionNumberTest, VersionNumberChangeCanary) {
android::base::GetProperty("ro.build.version.release", ""); android::base::GetProperty("ro.build.version.release", "");
ASSERT_TRUE(release_number.size() > 0); ASSERT_TRUE(release_number.size() > 0);
// Reminder to change the Widevine CDM version number. // Reminder to change the Widevine CDM version number.
EXPECT_EQ("12L", release_number) EXPECT_EQ("13", release_number)
<< "The Android version number has changed. You need to update this test " << "The Android version number has changed. You need to update this test "
"and also possibly update the Widevine version number in " "and also possibly update the Widevine version number in "
"wv_android_constants.h"; "wv_android_constants.h";