summaryrefslogtreecommitdiffstats
path: root/services/camera/libcameraservice/CameraService.cpp
diff options
context:
space:
mode:
authorEino-Ville Talvala <etalvala@google.com>2016-01-13 10:07:04 -0800
committerEino-Ville Talvala <etalvala@google.com>2016-01-13 16:39:53 -0800
commitc4003965258404a19b99280ac0f475e2f290bf27 (patch)
treec9a4ed77bfc9c2d5b677ffb4943e657b215e04e1 /services/camera/libcameraservice/CameraService.cpp
parenta39f9818759155a2651995d6844f9821d83e3f0d (diff)
downloadframeworks_av-c4003965258404a19b99280ac0f475e2f290bf27.zip
frameworks_av-c4003965258404a19b99280ac0f475e2f290bf27.tar.gz
frameworks_av-c4003965258404a19b99280ac0f475e2f290bf27.tar.bz2
Camera: Disallow dumping clients directly
Camera service dumps should only be initiated through ICameraService::dump. Bug: 26265403 Change-Id: If3ca4718ed74bf33ad8a416192689203029e2803
Diffstat (limited to 'services/camera/libcameraservice/CameraService.cpp')
-rw-r--r--services/camera/libcameraservice/CameraService.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/services/camera/libcameraservice/CameraService.cpp b/services/camera/libcameraservice/CameraService.cpp
index 9a1101a..8391f26 100644
--- a/services/camera/libcameraservice/CameraService.cpp
+++ b/services/camera/libcameraservice/CameraService.cpp
@@ -1896,6 +1896,14 @@ void CameraService::BasicClient::disconnect() {
mClientPid = 0;
}
+status_t CameraService::BasicClient::dump(int, const Vector<String16>&) {
+ // No dumping of clients directly over Binder,
+ // must go through CameraService::dump
+ android_errorWriteWithInfoLog(SN_EVENT_LOG_ID, "26265403",
+ IPCThreadState::self()->getCallingUid(), NULL, 0);
+ return OK;
+}
+
String16 CameraService::BasicClient::getPackageName() const {
return mClientPackageName;
}
@@ -2328,7 +2336,7 @@ status_t CameraService::dump(int fd, const Vector<String16>& args) {
String8(client->getPackageName()).string());
write(fd, result.string(), result.size());
- client->dump(fd, args);
+ client->dumpClient(fd, args);
}
if (stateLocked) mCameraStatesLock.unlock();