From b710094cc9fe5eaf4b00b091ba024e2a6837a7c3 Mon Sep 17 00:00:00 2001 From: Jeff Tinker Date: Tue, 17 Jun 2014 16:45:46 -0700 Subject: Fix Externally reported security issue bug: 12724697 Change-Id: I57f37dbb3b01c0c3d3256be67c395352dd6ada13 --- drm/drmserver/DrmManagerService.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'drm') diff --git a/drm/drmserver/DrmManagerService.cpp b/drm/drmserver/DrmManagerService.cpp index 2b71904..63341e0 100644 --- a/drm/drmserver/DrmManagerService.cpp +++ b/drm/drmserver/DrmManagerService.cpp @@ -34,7 +34,18 @@ using namespace android; static Vector trustedUids; static bool isProtectedCallAllowed() { - return true; + // TODO + // Following implementation is just for reference. + // Each OEM manufacturer should implement/replace with their own solutions. + IPCThreadState* ipcState = IPCThreadState::self(); + uid_t uid = ipcState->getCallingUid(); + + for (unsigned int i = 0; i < trustedUids.size(); ++i) { + if (trustedUids[i] == uid) { + return true; + } + } + return false; } void DrmManagerService::instantiate() { -- cgit v1.1