summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXin Li <delphij@google.com>2020-09-08 16:57:35 -0700
committerXin Li <delphij@google.com>2020-09-08 16:57:35 -0700
commit544c4429fba422cf682a67190a0c42b08619778d (patch)
treef1aeb7cd995e6bc74c67f636e0f1c821b6e0bd93
parentc8467301b7f162ed3b315591eda64816e09be0ee (diff)
parent412223d76fd8aaa2403e45d2cb4d49d4e9377659 (diff)
downloadplatform_system_hwservicemanager-master.tar.gz
platform_system_hwservicemanager-master.tar.bz2
platform_system_hwservicemanager-master.zip
Merge Android RHEADmaster
Bug: 168057903 Merged-In: I05bf001a541c36cea285a3ee33b0ede8403c271d Change-Id: Iea0b3727d5b1720368618628bc7c53517ea4a9bf
-rw-r--r--ServiceManager.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/ServiceManager.cpp b/ServiceManager.cpp
index fffe281..85d4974 100644
--- a/ServiceManager.cpp
+++ b/ServiceManager.cpp
@@ -312,6 +312,11 @@ Return<bool> ServiceManager::add(const hidl_string& name, const sp<IBase>& servi
auto pidcon = getBinderCallingContext();
+ if (!mAcl.canAdd(IBase::descriptor, pidcon)) {
+ LOG(ERROR) << "Missing permissions to add IBase";
+ return false;
+ }
+
auto ret = service->interfaceChain([&](const auto &interfaceChain) {
addSuccess = addImpl(name, service, interfaceChain, pidcon);
});