From 363fc542f305586590e92016ecf9c4fe308d27a6 Mon Sep 17 00:00:00 2001 From: Jeff Tinker Date: Thu, 11 Jan 2018 17:46:16 -0800 Subject: [PATCH] Fix use of uninitialized value in libmediadrm bug:70526702 test:gts media tests Change-Id: I29a67dad01ca8c8f649ba12cf08cc86b7eb56523 (cherry picked from commit 2442047f5c6d368f69fa81917f5aabc9b3c342a0) --- drm/libmediadrm/CryptoHal.cpp | 5 ++++- drm/libmediadrm/ICrypto.cpp | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/drm/libmediadrm/CryptoHal.cpp b/drm/libmediadrm/CryptoHal.cpp index d613a5b585..1fdc6e1954 100644 --- a/drm/libmediadrm/CryptoHal.cpp +++ b/drm/libmediadrm/CryptoHal.cpp @@ -331,10 +331,13 @@ ssize_t CryptoHal::decrypt(const uint8_t keyId[16], const uint8_t iv[16], return status; } secure = false; - } else { + } else if (destination.mType == kDestinationTypeNativeHandle) { hDestination.type = BufferType::NATIVE_HANDLE; hDestination.secureMemory = hidl_handle(destination.mHandle); secure = true; + } else { + android_errorWriteLog(0x534e4554, "70526702"); + return UNKNOWN_ERROR; } ::SharedBuffer hSource; diff --git a/drm/libmediadrm/ICrypto.cpp b/drm/libmediadrm/ICrypto.cpp index 37dc83bb8b..1d70a4e0f0 100644 --- a/drm/libmediadrm/ICrypto.cpp +++ b/drm/libmediadrm/ICrypto.cpp @@ -369,6 +369,10 @@ status_t BnCrypto::onTransact( android_errorWriteLog(0x534e4554, "71389378"); return OK; } + } else { + reply->writeInt32(BAD_VALUE); + android_errorWriteLog(0x534e4554, "70526702"); + return OK; } AString errorDetailMsg; -- 2.11.0