summaryrefslogtreecommitdiff
path: root/libs/fakeservicemanager
AgeCommit message (Collapse)Author
2024-11-29Add binder to libbinder cache after addService Parth Sane
This will prevent system_server and other applications from calling servicemanager for local binders. Flag: RELEASE_LIBBINDER_CLIENT_CACHE Bug: 333854840 Test: atest binderCacheUnitTest Change-Id: I2693f21a3f5b7a5770481e5ac79719444284524d
2023-12-28libfakeservicemanager: no hold lock in clear Steven Moreland
destructors may reference servicemanager, and so if objects are destroyed by libfakeservicemanager clear, this was causing a recursive lock take. Fix this the standard way, by using the lock to copy out references, and then clear them when its okay to talk to servicemanager again. Bug: N/A Test: w/ fuzzers Change-Id: I4795ff6e042324e6ffe76f6c915c1328d3eee94f
2023-08-25Merge "Use String8/16 c_str [binder]" into main Treehugger Robot
2023-08-25Use String8/16 c_str [binder] Tomasz Wasilczyk
Current String8::string() has two problems: it may suggest it's returning a std::string and also prevents a drop-in replacement with std::string. Bug: 295394788 Test: make checkbuild Change-Id: I1eb6ddebe3faede57f3e6f046da572a79056125a
2023-08-24Adding rust wrapper lib for libfakeServiceManager Pawan Wagh
rust lib which setup libfakeservicemanager and sets it as default is being added here. It uses c++ backend underneath. Test: m libfakeservicemanager_rs Test: atest fakeservicemanager_test Bug: 296909761 Change-Id: Ia1e7ebe5174f05fb4f8673a2feaad9b1171eb60c
2023-08-01libfakeservicemanager: thread safe Steven Moreland
Wasn't, used in fuzzers in a way that is hard to prove whether it's really needed or not. Avoid possibly hard to diagnose future issues. Bug: N/A Test: libfakeservicemanager_test Change-Id: I91d4d769ce40c1c3b82fb64fff748a380b43b8b6
2023-02-27Change name of the fake service manager Devin Moore
Change the name of the class and the exported include directory to make it more obvious when this fake service manager is being used. Test: m Bug: 259548383 Change-Id: I98205c49babd2e91a8f3f643de9f3eccca302c9c Merged-In: I98205c49babd2e91a8f3f643de9f3eccca302c9c
2022-11-18fakeservicemanager: Add a clear() method Devin Moore
This clears all registered services. Test: atest fakeservicemanager_test Bug: 259549851 Change-Id: Ie563de3e5babc67b9cc02efa570bf669a92bf3e4
2022-11-18fakeservicemanager: Don't accept null binders for addService Devin Moore
Parity with the rest of the Service Manager APIs. Test: atest fakeservicemanager_test Bug: 259549842 Change-Id: I715590bc4c4f2f434ad93f82c2ba98d40334ef38
2022-10-26servicemanager: getUpdatableNames() Jooyung Han
This new method is a reverse of updatableViaApex(). It returns the list of declared instances which can be updated via the passed APEX. Updatable vendor apexes are supposed to be used only to update HAL services. APEXd can use this method to see if the target APEX is actually to updating HALs. It's not exposed to NDK/Java yet because there's no clients. Bug: 254201177 Test: TBD Change-Id: I7b5aa7d00a3ddeb13855816006a9561dfa601529
2022-09-07Added export_include_dirs in libfakeservicemanager Devendra Singhi
Test: m libfakeservicemanager Bug: 230737204 Change-Id: I77f9a8f7b1a5e8bc5743edf048f4bdcceb02cc59
2022-06-16Add AIDL HAL stack traces to bug-reports Jayant Chowdhary
Bug: 233130219 Test: adb bugreport; check that camera provider has stack traces in VM traces Ignore-AOSP-First: I will cherry-pick after the topic is submitted. Merged-In: I1e087600ac764191a91eb9b1f11e51f21bce19e3 Change-Id: I1e087600ac764191a91eb9b1f11e51f21bce19e3 Signed-off-by: Jayant Chowdhary <jchowdhary@google.com> (cherry picked from commit ddd3da0d8f092a24d2a8a9a1e211d60292b7da35)
2022-02-02IServiceManager: add registerForNotifications. Jayant Chowdhary
This can help binder clients know when a service has been registered. Potentially helpful, in situations where some HALs take some seconds to come up and register with service manager. Bug: 196432585 Test: manual Test: binderLibTest Change-Id: Ib1d9b967a7cffa99f43dc26f9025caf1f59ab77f Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>
2021-09-21Add getConnectionInfo API to service manager Devin Moore
This gets connection info from the vintf manifest for AIDL hals that report it. The hals will have new "ip" and "port" fields in their entries if they are serving the interface from a remote device at that ip address/port combo. Test: tested the IServiceManager API with an internal POC using a remote HAL Test: atest binderStabilityTest Bug: 198207801 Change-Id: I334bebe62afb40e9710b57257f95e37a9c2b8226
2021-04-21servicemanager: expose updatable-via-apex Steven Moreland
Service manager is already reading VINTF, so processes that need this information can access this information w/o needing more permissions. Bug: 185832616 Test: two added tests + manually specifying updatable-via-apex on a service and checking the result Change-Id: Id86a72d49466048a3e2173e40526981abb6f3123
2021-02-15[LSC] Add LOCAL_LICENSE_KINDS to frameworks/native Bob Badour
Added SPDX-license-identifier-Apache-2.0 to: cmds/atrace/Android.bp cmds/bugreport/Android.bp cmds/bugreportz/Android.bp cmds/cmd/Android.bp cmds/dumpstate/Android.bp cmds/dumpsys/Android.bp cmds/dumpsys/tests/Android.bp cmds/flatland/Android.mk cmds/idlcli/Android.bp cmds/installd/Android.bp cmds/installd/tests/Android.bp cmds/ip-up-vpn/Android.mk cmds/lshal/Android.bp cmds/lshal/libprocpartition/Android.bp cmds/rawbu/Android.bp cmds/rss_hwm_reset/Android.bp cmds/service/Android.bp cmds/servicemanager/Android.bp cmds/surfacereplayer/Android.bp cmds/surfacereplayer/replayer/Android.bp libs/adbd_auth/Android.bp libs/android_runtime_lazy/Android.bp libs/arect/Android.bp libs/binder/Android.bp libs/binder/ndk/Android.bp libs/binder/ndk/tests/Android.bp libs/binder/parcel_fuzzer/Android.bp libs/binder/rust/Android.bp libs/binder/rust/tests/Android.bp libs/binder/tests/Android.bp libs/binder/tests/fuzzers/Android.bp libs/binderdebug/Android.bp libs/binderdebug/tests/Android.bp libs/binderthreadstate/1.0/Android.bp libs/binderthreadstate/Android.bp libs/bufferqueueconverter/Android.bp libs/cputimeinstate/Android.bp libs/diskusage/Android.bp libs/dumputils/Android.bp libs/fakeservicemanager/Android.bp libs/gralloc/types/Android.bp libs/gralloc/types/fuzzer/Android.bp libs/gralloc/types/tests/Android.bp libs/graphicsenv/Android.bp libs/gui/Android.bp libs/gui/sysprop/Android.bp libs/gui/tests/Android.bp libs/incidentcompanion/Android.bp libs/input/Android.bp libs/input/tests/Android.bp libs/math/Android.bp libs/math/tests/Android.bp libs/nativebase/Android.bp libs/nativedisplay/Android.bp libs/nativewindow/Android.bp libs/nativewindow/tests/Android.bp libs/renderengine/Android.bp libs/renderengine/tests/Android.bp libs/sensor/Android.bp libs/sensor/tests/Android.bp libs/sensorprivacy/Android.bp libs/ui/Android.bp libs/ui/tests/Android.bp libs/ui/tools/Android.bp libs/vibrator/Android.bp libs/vibrator/fuzzer/Android.bp libs/vr/libpdx/Android.bp libs/vr/libpdx/fuzz/Android.bp libs/vr/libvr_manager/Android.bp opengl/libs/Android.bp opengl/tests/EGLTest/Android.bp opengl/tests/fillrate/Android.bp opengl/tests/finish/Android.bp opengl/tests/gl2_basic/Android.bp opengl/tests/gl2_cameraeye/Android.bp opengl/tests/gl2_copyTexImage/Android.bp opengl/tests/gl2_java/Android.bp opengl/tests/gl2_jni/Android.bp opengl/tests/gl2_yuvtex/Android.bp opengl/tests/gl_jni/Android.bp opengl/tests/gl_perf/Android.bp opengl/tests/gl_perfapp/Android.bp opengl/tests/gl_yuvtex/Android.bp opengl/tests/gldual/Android.bp opengl/tests/gralloc/Android.bp opengl/tests/hwc/Android.bp opengl/tests/lib/Android.bp opengl/tests/lighting1709/Android.bp opengl/tests/linetex/Android.bp opengl/tests/swapinterval/Android.bp opengl/tests/testFramerate/Android.bp opengl/tests/testLatency/Android.bp opengl/tests/testPauseResume/Android.bp opengl/tests/testViewport/Android.bp opengl/tests/textures/Android.bp services/audiomanager/Android.bp services/automotive/display/Android.bp services/batteryservice/Android.bp services/displayservice/Android.bp services/gpuservice/Android.bp services/gpuservice/bpfprogs/Android.bp services/gpuservice/gpumem/Android.bp services/gpuservice/gpustats/Android.bp services/gpuservice/tests/unittests/Android.bp services/gpuservice/tracing/Android.bp services/inputflinger/Android.bp services/inputflinger/benchmarks/Android.bp services/inputflinger/dispatcher/Android.bp services/inputflinger/host/Android.bp services/inputflinger/reader/Android.bp services/inputflinger/reporter/Android.bp services/inputflinger/tests/Android.bp services/inputflinger/tests/fuzzers/Android.bp services/powermanager/Android.bp services/schedulerservice/Android.bp services/sensorservice/Android.bp services/sensorservice/hidl/Android.bp services/sensorservice/tests/Android.bp services/stats/Android.bp services/surfaceflinger/Android.bp services/surfaceflinger/CompositionEngine/Android.bp services/surfaceflinger/TimeStats/Android.bp services/surfaceflinger/TimeStats/timestatsproto/Android.bp services/surfaceflinger/layerproto/Android.bp services/surfaceflinger/sysprop/Android.bp services/surfaceflinger/tests/Android.bp services/surfaceflinger/tests/fakehwc/Android.bp services/surfaceflinger/tests/unittests/Android.bp services/surfaceflinger/tests/vsync/Android.bp services/surfaceflinger/tests/waitforvsync/Android.bp services/utils/Android.bp services/utils/tests/Android.bp services/vr/hardware_composer/Android.bp services/vr/virtual_touchpad/Android.bp vulkan/libvulkan/Android.bp vulkan/nulldrv/Android.bp vulkan/vkjson/Android.bp Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD SPDX-license-identifier-MIT SPDX-license-identifier-Unicode-DFS legacy_notice to: Android.bp Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD SPDX-license-identifier-MIT legacy_notice to: opengl/Android.bp opengl/tests/Android.bp Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_notice to: libs/vr/Android.bp Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT to: headers/Android.bp services/vr/Android.bp vulkan/Android.bp Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT SPDX-license-identifier-Unicode-DFS to: cmds/surfacereplayer/proto/Android.bp libs/vr/libbroadcastring/Android.bp libs/vr/libbufferhub/Android.bp libs/vr/libbufferhubqueue/Android.bp libs/vr/libbufferhubqueue/benchmarks/Android.bp libs/vr/libbufferhubqueue/tests/Android.bp libs/vr/libdisplay/Android.bp libs/vr/libdvr/Android.bp libs/vr/libdvr/tests/Android.bp libs/vr/libdvrcommon/Android.bp libs/vr/libpdx_default_transport/Android.bp libs/vr/libpdx_uds/Android.bp libs/vr/libperformance/Android.bp libs/vr/libvrflinger/Android.bp libs/vr/libvrflinger/tests/Android.bp libs/vr/libvrsensor/Android.bp opengl/tests/configdump/Android.bp opengl/tests/filter/Android.bp opengl/tests/gl_basic/Android.bp opengl/tests/tritex/Android.bp services/vr/bufferhubd/Android.bp services/vr/hardware_composer/aidl/Android.bp Added SPDX-license-identifier-BSD SPDX-license-identifier-MIT legacy_notice to: opengl/tests/angeles/Android.bp Added SPDX-license-identifier-MIT to: services/vr/performanced/Android.bp Bug: 68860345 Bug: 151177513 Bug: 151953481 Test: m all Exempt-From-Owner-Approval: janitorial work Change-Id: Ib1de8cd7b87446de45d79db15cd90b93a591846d Merged-in: I61e7702e6b36f218bebc7c87853001861a92741e Merged-in: I9d9d5fb32033c08cfb517f6cfc0ecb4cf1eee2fe Merged-in: I10f45547b1161e3768a134b38bf40d77a3a82f09
2020-11-05Disable libbinder darwin builds Yifan Hong
libbinder makes heavy use of linux headers, so it won't build on a mac. This gives us cleaner errors when a mac target depends on it. Instead of seeing libbinder build breakages, we will see the missing dependency error. Exempt-From-Owner-Approval: fixing build breakage Test: none Bug: 172023026 Change-Id: I4eadf2c9c09599b5d1bcafdb7d8559946c854e49
2020-09-24servicemanager: vintf declared API Steven Moreland
servicemanager already has to parse VINTF configurations, so exposing this functionality here (mirroring hwservicemanager). Note, this API, like isDeclared is not branded as "VINTF" for future compatibility with APEX or other interfaces. Bug: 168715768 Test: manual Change-Id: Ifbc44677605de757c46ef17f7f29fd83e66a8161
2020-09-24libfakeservicemanager: remove copied comments Steven Moreland
These APIs are documented in the super class. Bug: N/A Test: N/A Change-Id: I812fcbc51f561f9bc732a4699ef4fb2fb47baadf
2020-04-01Build libfakeservicemanager for host. Brett Chabot
Bug: 147595993 Test: m libfakeservicemanager Change-Id: I353678b10c36c07e1b8b1ba77e7f190b95f34258
2020-01-31Add simple fake for native service manager. Brett Chabot
Reusing the existing binder-based native service manager has proved problematic in host/test environments. So as a workaround, this commit creates a IServiceManager native implementation that can be communicated with directly. Bug: 147595993 Test: m fakeservicemanager_test; fakeservicemanager_test Change-Id: Icfa6f2fd314bd5a7b3d5e8a064b487f92b99b133