OSDN Git Service

CameraService: Fix permissions check issues
authorEino-Ville Talvala <etalvala@google.com>
Tue, 17 Jun 2014 02:21:12 +0000 (19:21 -0700)
committerEino-Ville Talvala <etalvala@google.com>
Tue, 17 Jun 2014 20:32:53 +0000 (20:32 +0000)
Bug: 15677063
Change-Id: I012c111fff90fefd9eb0fef7c9d6034f00c9c6df

services/camera/libcameraservice/CameraService.cpp

index 280478c..a014457 100644 (file)
@@ -791,8 +791,8 @@ status_t CameraService::connectPro(
           case CAMERA_DEVICE_API_VERSION_3_0:
           case CAMERA_DEVICE_API_VERSION_3_1:
           case CAMERA_DEVICE_API_VERSION_3_2:
-            client = new ProCamera2Client(this, cameraCb, String16(),
-                    cameraId, facing, callingPid, USE_CALLING_UID, getpid());
+            client = new ProCamera2Client(this, cameraCb, clientPackageName,
+                    cameraId, facing, callingPid, clientUid, getpid());
             break;
           case -1:
             ALOGE("Invalid camera id %d", cameraId);
@@ -871,8 +871,8 @@ status_t CameraService::connectDevice(
           case CAMERA_DEVICE_API_VERSION_3_0:
           case CAMERA_DEVICE_API_VERSION_3_1:
           case CAMERA_DEVICE_API_VERSION_3_2:
-            client = new CameraDeviceClient(this, cameraCb, String16(),
-                    cameraId, facing, callingPid, USE_CALLING_UID, getpid());
+            client = new CameraDeviceClient(this, cameraCb, clientPackageName,
+                    cameraId, facing, callingPid, clientUid, getpid());
             break;
           case -1:
             ALOGE("Invalid camera id %d", cameraId);
@@ -1090,6 +1090,7 @@ status_t CameraService::onTransact(
     switch (code) {
         case BnCameraService::CONNECT:
         case BnCameraService::CONNECT_PRO:
+        case BnCameraService::CONNECT_DEVICE:
             const int pid = getCallingPid();
             const int self_pid = getpid();
             if (pid != self_pid) {