Loading media/libmediatranscoding/TranscodingClientManager.cpp +7 −5 Original line number Diff line number Diff line Loading @@ -302,12 +302,14 @@ bool TranscodingClientManager::isTrustedCaller(pid_t pid, uid_t uid) { } int32_t result; if (__builtin_available(android 31, *)) { if (APermissionManager_checkPermission("android.permission.WRITE_MEDIA_STORAGE", pid, uid, &result) == PERMISSION_MANAGER_STATUS_OK && result == PERMISSION_MANAGER_PERMISSION_GRANTED) { mTrustedUids.insert(uid); return true; } } return false; } Loading media/libmediatranscoding/TranscodingUidPolicy.cpp +16 −9 Original line number Diff line number Diff line Loading @@ -48,8 +48,9 @@ void TranscodingUidPolicy::OnUidImportance(uid_t uid, int32_t uidImportance, voi } void TranscodingUidPolicy::registerSelf() { mUidObserver = AActivityManager_addUidImportanceListener( &OnUidImportance, -1, (void*)this); if (__builtin_available(android 31, *)) { mUidObserver = AActivityManager_addUidImportanceListener(&OnUidImportance, -1, (void*)this); } if (mUidObserver == nullptr) { ALOGE("Failed to register uid observer"); Loading @@ -62,12 +63,16 @@ void TranscodingUidPolicy::registerSelf() { } void TranscodingUidPolicy::unregisterSelf() { if (__builtin_available(android 31, *)) { AActivityManager_removeUidImportanceListener(mUidObserver); mUidObserver = nullptr; Mutex::Autolock _l(mUidLock); mRegistered = false; ALOGI("Unregistered uid observer"); } else { ALOGE("Failed to unregister uid observer"); } } void TranscodingUidPolicy::setCallback(const std::shared_ptr<UidPolicyCallbackInterface>& cb) { Loading @@ -86,9 +91,11 @@ void TranscodingUidPolicy::registerMonitorUid(uid_t uid) { } int32_t state = IMPORTANCE_UNKNOWN; if (__builtin_available(android 31, *)) { if (mRegistered && AActivityManager_isUidActive(uid)) { state = AActivityManager_getUidImportance(uid); } } ALOGV("%s: inserting new uid: %u, procState %d", __FUNCTION__, uid, state); Loading services/mediatranscoding/MediaTranscodingService.cpp +12 −10 Original line number Diff line number Diff line Loading @@ -62,6 +62,7 @@ binder_status_t MediaTranscodingService::dump(int fd, const char** /*args*/, uin uid_t callingUid = AIBinder_getCallingUid(); pid_t callingPid = AIBinder_getCallingPid(); if (__builtin_available(android 31, *)) { int32_t permissionResult; if (APermissionManager_checkPermission("android.permission.DUMP", callingPid, callingUid, &permissionResult) != PERMISSION_MANAGER_STATUS_OK || Loading @@ -73,6 +74,7 @@ binder_status_t MediaTranscodingService::dump(int fd, const char** /*args*/, uin write(fd, result.string(), result.size()); return PERMISSION_DENIED; } } const size_t SIZE = 256; char buffer[SIZE]; Loading Loading
media/libmediatranscoding/TranscodingClientManager.cpp +7 −5 Original line number Diff line number Diff line Loading @@ -302,12 +302,14 @@ bool TranscodingClientManager::isTrustedCaller(pid_t pid, uid_t uid) { } int32_t result; if (__builtin_available(android 31, *)) { if (APermissionManager_checkPermission("android.permission.WRITE_MEDIA_STORAGE", pid, uid, &result) == PERMISSION_MANAGER_STATUS_OK && result == PERMISSION_MANAGER_PERMISSION_GRANTED) { mTrustedUids.insert(uid); return true; } } return false; } Loading
media/libmediatranscoding/TranscodingUidPolicy.cpp +16 −9 Original line number Diff line number Diff line Loading @@ -48,8 +48,9 @@ void TranscodingUidPolicy::OnUidImportance(uid_t uid, int32_t uidImportance, voi } void TranscodingUidPolicy::registerSelf() { mUidObserver = AActivityManager_addUidImportanceListener( &OnUidImportance, -1, (void*)this); if (__builtin_available(android 31, *)) { mUidObserver = AActivityManager_addUidImportanceListener(&OnUidImportance, -1, (void*)this); } if (mUidObserver == nullptr) { ALOGE("Failed to register uid observer"); Loading @@ -62,12 +63,16 @@ void TranscodingUidPolicy::registerSelf() { } void TranscodingUidPolicy::unregisterSelf() { if (__builtin_available(android 31, *)) { AActivityManager_removeUidImportanceListener(mUidObserver); mUidObserver = nullptr; Mutex::Autolock _l(mUidLock); mRegistered = false; ALOGI("Unregistered uid observer"); } else { ALOGE("Failed to unregister uid observer"); } } void TranscodingUidPolicy::setCallback(const std::shared_ptr<UidPolicyCallbackInterface>& cb) { Loading @@ -86,9 +91,11 @@ void TranscodingUidPolicy::registerMonitorUid(uid_t uid) { } int32_t state = IMPORTANCE_UNKNOWN; if (__builtin_available(android 31, *)) { if (mRegistered && AActivityManager_isUidActive(uid)) { state = AActivityManager_getUidImportance(uid); } } ALOGV("%s: inserting new uid: %u, procState %d", __FUNCTION__, uid, state); Loading
services/mediatranscoding/MediaTranscodingService.cpp +12 −10 Original line number Diff line number Diff line Loading @@ -62,6 +62,7 @@ binder_status_t MediaTranscodingService::dump(int fd, const char** /*args*/, uin uid_t callingUid = AIBinder_getCallingUid(); pid_t callingPid = AIBinder_getCallingPid(); if (__builtin_available(android 31, *)) { int32_t permissionResult; if (APermissionManager_checkPermission("android.permission.DUMP", callingPid, callingUid, &permissionResult) != PERMISSION_MANAGER_STATUS_OK || Loading @@ -73,6 +74,7 @@ binder_status_t MediaTranscodingService::dump(int fd, const char** /*args*/, uin write(fd, result.string(), result.size()); return PERMISSION_DENIED; } } const size_t SIZE = 256; char buffer[SIZE]; Loading