Add liboemcrypto.so as required by WV APEX

[ Merge of go/wvgerrit/164757 ]

Modify Widevine apex configuration to add add liboemcrypto.so as
required by WV APEX.

Bug: 243699259
Test: atp v2/widevine-eng/drm_compliance
Change-Id: I136dde5d77aed4fb14737e4692153c8f3b2c701b
This commit is contained in:
Kyle Zhang
2022-12-28 21:30:58 +00:00
parent 609349c314
commit a5c7a48f8a
8 changed files with 31 additions and 28 deletions

View File

@@ -849,16 +849,15 @@ class Adapter {
wvcdm::metrics::OEMCrypto_INITIALIZED_USING_L3_NO_L1_LIBRARY_PATH);
return result;
}
if (level1_library_ == nullptr) {
if (!level1_library_) {
for (auto& name : library_names) {
level1_library_ = dlopen((name.c_str()), RTLD_NOW);
if (level1_library_) {
LOGV("Using oemcrypto path %s", name.c_str());
break;
if (!level1_library_) {
LOGW("Could not load oemcrypto from path %s. %s", name.c_str(), dlerror());
}
}
if (level1_library_ == nullptr) {
LOGW("Could not load oemcrypto. Falling back to L3. %s", dlerror());
if (!level1_library_) {
LOGW("Could not load oemcrypto. Falling back to L3.");
metrics.OemCryptoDynamicAdapterMetrics::SetInitializationMode(
wvcdm::metrics::OEMCrypto_INITIALIZED_USING_L3_L1_OPEN_FAILED);
return result;

View File

@@ -180,18 +180,9 @@ bool Properties::GetOEMCryptoPaths(std::vector<std::string>* library_names) {
LOGW("Properties::GetOEMCryptoPath: Invalid parameter");
return false;
}
std::vector<std::string> library_paths = {"/vendor/", "/system/", "/odm/"};
std::string sub_dir;
#if __LP64__
sub_dir = "lib64/";
#else
sub_dir = "lib/";
#endif
const std::string library_name = "liboemcrypto.so";
for (auto& path : library_paths) {
library_names->push_back(path + sub_dir + library_name);
}
library_names->push_back("liboemcrypto.so");
return true;
}