Sony Patch to LicenseKeys::GetAllowedUsage()

Sony has identified a 5-year-old copy-and-paste error in
LicenseKeys::GetAllowedUsage(). For entitled keys, it was calling
CanDecryptContent() instead of GetAllowedUsage() on the entitlement key
session. This meant that for entitled keys, the allowed_usage parameter
was never updated and the return value of the function was indicating
something different than intended.

Bug: 280902715
Test: x86-64
Merged from https://widevine-internal-review.googlesource.com/174671

Merged from https://widevine-internal-review.googlesource.com/175296

Merged from https://widevine-internal-review.googlesource.com/175299

Merged from https://widevine-internal-review.googlesource.com/175350

Change-Id: Ic6f34a5110c7144778d5773d5c1cc5768f953e41
This commit is contained in:
John "Juce" Bruce
2023-05-08 16:54:45 -07:00
committed by Robert Shih
parent 17a1de8d2d
commit 3316870a0a

View File

@@ -130,7 +130,7 @@ bool LicenseKeys::GetAllowedUsage(const KeyId& key_id,
} else if (content_keyid_to_entitlement_key_id_.count(key_id) > 0) { } else if (content_keyid_to_entitlement_key_id_.count(key_id) > 0) {
if (key_statuses_.count(content_keyid_to_entitlement_key_id_[key_id]) > 0) { if (key_statuses_.count(content_keyid_to_entitlement_key_id_[key_id]) > 0) {
return key_statuses_[content_keyid_to_entitlement_key_id_[key_id]] return key_statuses_[content_keyid_to_entitlement_key_id_[key_id]]
->CanDecryptContent(); ->GetAllowedUsage(allowed_usage);
} }
return false; return false;
} else { } else {