summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDevin Moore <devinmoore@google.com>2024-01-08 17:49:30 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2024-01-08 17:49:30 +0000
commit8436110c902052c3c1cf278835a14a1c7133271d (patch)
tree7aca5cab60635433a45b73f831abfa6e067058f5
parente7f820c7495b4dc6ae03a6ef496a15c68c483a84 (diff)
parent65a9d34b62ea5e43e3bca8656c7e18f1613d579f (diff)
downloadhwservicemanager-8436110c902052c3c1cf278835a14a1c7133271d.tar.gz
Stop registering android.hidl.token am: 4215470145 am: 65a9d34b62
Original change: https://android-review.googlesource.com/c/platform/system/hwservicemanager/+/2609329 Change-Id: I98df5e7a758815b60236e57b9e7ae91936e4091c Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--hwservicemanager.xml2
-rw-r--r--service.cpp15
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