diff options
author | Guojing Yuan <guojing@google.com> | 2021-07-27 00:20:42 +0000 |
---|---|---|
committer | Guojing Yuan <guojing@google.com> | 2021-07-27 00:27:01 +0000 |
commit | 9f7cbe51e13fe21588a8682eae6ccd261890a713 (patch) | |
tree | 944d1b0dc18067d39658bcd661d69e1da53b7362 | |
parent | 5b5417285e9d07cf2883255250a61c7948aff58e (diff) |
Add permission check while creating CompanionDeviceService
Fix: 194435859
Test: N/A
Change-Id: Ia701706f54b131fa6a72cc188fb62919565b0c70
-rw-r--r-- | services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java b/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java index 9ff1b10c09ed..b1c67fdf70e1 100644 --- a/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java +++ b/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java @@ -17,6 +17,7 @@ package com.android.server.companion; +import static android.Manifest.permission.BIND_COMPANION_DEVICE_SERVICE; import static android.bluetooth.le.ScanSettings.CALLBACK_TYPE_ALL_MATCHES; import static android.bluetooth.le.ScanSettings.SCAN_MODE_BALANCED; import static android.content.Context.BIND_IMPORTANT; @@ -1197,6 +1198,12 @@ public class CompanionDeviceManagerService extends SystemService implements Bind + " has " + packageResolveInfos.size()); return new ServiceConnector.NoOp<>(); } + String servicePermission = packageResolveInfos.get(0).serviceInfo.permission; + if (!BIND_COMPANION_DEVICE_SERVICE.equals(servicePermission)) { + Slog.w(LOG_TAG, "Binding CompanionDeviceService must have " + + BIND_COMPANION_DEVICE_SERVICE + " permission."); + return new ServiceConnector.NoOp<>(); + } ComponentName componentName = packageResolveInfos.get(0).serviceInfo.getComponentName(); Slog.i(LOG_TAG, "Initializing CompanionDeviceService binding for " + componentName); return new ServiceConnector.Impl<ICompanionDeviceService>(getContext(), |