Call AIBinder_setRequestingSid from createBinder override function

AIBinder_setRequestingSid must be called first upon creation of a
binder object before AIBinder_getCallingSid is called. Call
AIBinder_setRequestingSid in the createBinder override function
for WVDrmFactory, WVDrmPlugin and WVCryptoPlugin classes.

Test: Play TV streaming
Test: adb shell dumpsys android.hardware.drm.IDrmFactory/widevine -a

Bug: 237613676
Change-Id: I9dde4715ba2003deb463bd75b23e1ebc2f22a764
(cherry picked from commit 6797b8eb8a)
This commit is contained in:
Edwin Wong
2022-07-30 01:50:48 +00:00
committed by Robert Shih
parent 4e582ceff0
commit f196b63088
8 changed files with 26 additions and 4 deletions

View File

@@ -69,6 +69,8 @@ struct WVCryptoPlugin : public ::aidl::android::hardware::drm::BnCryptoPlugin {
::android::sp<wvcdm::WvContentDecryptionModule> const mCDM;
uint32_t mUserId;
::ndk::SpAIBinder createBinder() override;
::aidl::android::hardware::drm::Status attemptDecrypt(
const wvcdm::CdmDecryptionParametersV16& params,
bool haveEncryptedSubsamples, std::string* errorDetailMsg);