diff options
author | Devin Moore <devinmoore@google.com> | 2023-05-30 19:39:36 +0000 |
---|---|---|
committer | Devin Moore <devinmoore@google.com> | 2024-01-05 17:29:42 +0000 |
commit | 4215470145c667e7a54ef0e7dc3de469f1c512c2 (patch) | |
tree | 7aca5cab60635433a45b73f831abfa6e067058f5 | |
parent | a0bc77968ea2b12234954f871e068e8a37a4c29f (diff) | |
download | hwservicemanager-4215470145c667e7a54ef0e7dc3de469f1c512c2.tar.gz |
Stop registering android.hidl.token
We are doing this early to make sure there are no more un-aware users of
this interface.
Test: CtsCameraTestCases and cts/camera/device-presubmit
Bug: 218588089
Change-Id: I2bce5e1d0a01d6617e601b1f4993a636bae652a5
-rw-r--r-- | hwservicemanager.xml | 2 | ||||
-rw-r--r-- | service.cpp | 15 |
2 files changed, 13 insertions, 4 deletions
diff --git a/hwservicemanager.xml b/hwservicemanager.xml index 65220d8..2bff501 100644 --- a/hwservicemanager.xml +++ b/hwservicemanager.xml @@ -8,7 +8,7 @@ <instance>default</instance> </interface> </hal> - <hal> + <hal max-level="8"> <name>android.hidl.token</name> <transport>hwbinder</transport> <version>1.0</version> diff --git a/service.cpp b/service.cpp index 3766bc5..6b11372 100644 --- a/service.cpp +++ b/service.cpp @@ -36,6 +36,7 @@ #include "ServiceManager.h" #include "TokenManager.h" +#include "Vintf.h" // libutils: using android::sp; @@ -166,9 +167,17 @@ int main() { ALOGE("Failed to register hwservicemanager with itself."); } - sp<TokenManager> tokenManager = new TokenManager(); - if (!manager->add(serviceName, tokenManager).withDefault(false)) { - ALOGE("Failed to register ITokenManager with hwservicemanager."); + // Check to make sure we should be registering tokenManager first. Only if + // it's declared in the manifest. + sp<TokenManager> tokenManager; + if (android::vintf::Transport::EMPTY != + android::hardware::getTransport(TokenManager::descriptor, serviceName)) { + tokenManager = new TokenManager(); + if (!manager->add(serviceName, tokenManager).withDefault(false)) { + ALOGE("Failed to register ITokenManager with hwservicemanager."); + } + } else { + ALOGW("Not registering android.hidl.token service because it is no longer supported"); } // Tell IPCThreadState we're the service manager |