diff options
author | Devin Moore <devinmoore@google.com> | 2024-04-04 21:29:09 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2024-04-04 21:29:09 +0000 |
commit | fbaf71c318f38d63c2a5b2fa2512b46f9f3d59e3 (patch) | |
tree | 24f9ba74b0f3a12f73dedf6970d5163a5f4444e7 | |
parent | 2400b8d52bb20edbb729fcfcc303601838c42a6d (diff) | |
parent | 9a4cbc786f72192049ab791b52e24f759c55d708 (diff) | |
download | hwservicemanager-fbaf71c318f38d63c2a5b2fa2512b46f9f3d59e3.tar.gz |
Merge "Stop registering android.hidl.token" into main
-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 |