Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 22c5c850 authored by Austin Borger's avatar Austin Borger
Browse files

Coalesce CameraThreadState and AttributionAndPermissionUtils

The calling UID / PID are ways of attributing the camera client to
the caller, and so fall under the scope of this utility class.

Change-Id: I06af9264d1ca68eaccc4c6e4c01b9d09dd20e5ad
Bug: 190657833
Test: CtsCameraTestCases
parent 523e49c3
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -188,7 +188,6 @@ cc_library {
        "aidl/DeathPipe.cpp",
        "utils/AttributionAndPermissionUtils.cpp",
        "utils/CameraServiceProxyWrapper.cpp",
        "utils/CameraThreadState.cpp",
        "utils/CameraTraces.cpp",
        "utils/AutoConditionLock.cpp",
        "utils/SchedulingPolicyUtils.cpp",
+75 −82

File changed.

Preview size limit exceeded, changes collapsed.

+12 −13

File changed.

Preview size limit exceeded, changes collapsed.

+2 −3
Original line number Diff line number Diff line
@@ -20,7 +20,6 @@

#include <com_android_internal_camera_flags.h>
#include <cutils/properties.h>
#include <utils/CameraThreadState.h>
#include <utils/Log.h>
#include <utils/SessionConfigurationUtils.h>
#include <utils/Trace.h>
@@ -2204,7 +2203,7 @@ binder::Status CameraDeviceClient::checkPidStatus(const char* checkLocation) {
// TODO: move to Camera2ClientBase
bool CameraDeviceClient::enforceRequestPermissions(CameraMetadata& metadata) {

    const int pid = CameraThreadState::getCallingPid();
    const int pid = getCallingPid();
    const int selfPid = getpid();
    camera_metadata_entry_t entry;

@@ -2243,7 +2242,7 @@ bool CameraDeviceClient::enforceRequestPermissions(CameraMetadata& metadata) {
        String16 permissionString =
            toString16("android.permission.CAMERA_DISABLE_TRANSMIT_LED");
        if (!checkCallingPermission(permissionString)) {
            const int uid = CameraThreadState::getCallingUid();
            const int uid = getCallingUid();
            ALOGE("Permission Denial: "
                  "can't disable transmit LED pid=%d, uid=%d", pid, uid);
            return false;
+1 −2
Original line number Diff line number Diff line
@@ -19,7 +19,6 @@
//#define LOG_NDEBUG 0

#include "CameraOfflineSessionClient.h"
#include "utils/CameraThreadState.h"
#include <utils/Trace.h>
#include <camera/StringUtils.h>

@@ -163,7 +162,7 @@ binder::Status CameraOfflineSessionClient::disconnect() {
        return res;
    }
    // Allow both client and the media server to disconnect at all times
    int callingPid = CameraThreadState::getCallingPid();
    int callingPid = getCallingPid();
    if (callingPid != mClientPid &&
            callingPid != mServicePid) {
        return res;
Loading