From 42eb79a3ff44928f3505ea88fa22fa0a8412fd35 Mon Sep 17 00:00:00 2001 From: Fred Gylys-Colwell Date: Sat, 30 May 2020 20:48:00 -0700 Subject: [PATCH] Check for null pointers in oemcrypto adapter Merge from Widevine repo of http://go/wvgerrit/100963 Test: unit tests on taimen Bug: 156967805 Change-Id: Ic8ba7461ffcaa371a5239dca84e8a3007b0df517 --- libwvdrmengine/cdm/core/src/oemcrypto_adapter_dynamic.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libwvdrmengine/cdm/core/src/oemcrypto_adapter_dynamic.cpp b/libwvdrmengine/cdm/core/src/oemcrypto_adapter_dynamic.cpp index 280ac36d..9c847cdb 100644 --- a/libwvdrmengine/cdm/core/src/oemcrypto_adapter_dynamic.cpp +++ b/libwvdrmengine/cdm/core/src/oemcrypto_adapter_dynamic.cpp @@ -754,6 +754,10 @@ class Adapter { LOOKUP_ALL(8, Initialize, OEMCrypto_Initialize); LOOKUP_ALL(8, APIVersion, OEMCrypto_APIVersion); LOOKUP_ALL(8, Terminate, OEMCrypto_Terminate); + if (level1_.Initialize == nullptr || level1_.APIVersion == nullptr || + level1_.Terminate == nullptr) { + level1_valid_ = false; + } if (!level1_valid_) { metrics->OemCryptoDynamicAdapterMetrics::SetInitializationMode( wvcdm::metrics::OEMCrypto_INITIALIZED_USING_L3_INVALID_L1);