service_manager: Add trusty service manager
Add a trusty service_manager lib that allows callers to retrieve binder
interfaces given a service name. This aligns as closely as possible to
Android's service manager, which we cannot yet integrate into trusty
(b/376328268). The goal is to ensure that changes to clients using this
library are minimal when we eventually integrate the binder service
manager APIs.
This initial implementation supports direct connections in which a
service is found at the provided name (port) and indirect connections
through an ITrustyAccessor interface. In this initial implementation, only a
single ITrustyAccessor hop is supported.
Test: build.py qemu-generic-arm64-test-debug \
--test="boot-test:com.android.trusty.rust.service_manager_tests.test
Bug: 377907450
Change-Id: Ie0404a71029b9d0e792f18dd4c5ea45c2b918bea
17 files changed