media.log dump
Bug: 8446008
Change-Id: Ia47b204f5c4c91b99591eec5420a25a3dc8e7631
diff --git a/services/medialog/MediaLogService.cpp b/services/medialog/MediaLogService.cpp
index 2332b3e..f60749d 100644
--- a/services/medialog/MediaLogService.cpp
+++ b/services/medialog/MediaLogService.cpp
@@ -19,6 +19,7 @@
#include <sys/mman.h>
#include <utils/Log.h>
+#include <binder/PermissionCache.h>
#include <media/nbaio/NBLog.h>
#include <private/android_filesystem_config.h>
#include "MediaLogService.h"
@@ -55,6 +56,14 @@
status_t MediaLogService::dump(int fd, const Vector<String16>& args)
{
+ // FIXME merge with similar but not identical code at services/audioflinger/ServiceUtilities.cpp
+ static const String16 sDump("android.permission.DUMP");
+ if (!(IPCThreadState::self()->getCallingUid() == AID_MEDIA ||
+ PermissionCache::checkCallingPermission(sDump))) {
+ fdprintf(fd, "Permission denied.\n");
+ return NO_ERROR;
+ }
+
Vector<NamedReader> namedReaders;
{
Mutex::Autolock _l(mLock);