From 2d349907874d96f36d3ce00eaad5fdafed8c6620 Mon Sep 17 00:00:00 2001 From: Michael Wachenschwanz Date: Tue, 15 Aug 2017 00:57:14 -0700 Subject: Native Side of Binder Proxy Tracking by Uid Enable Processes to track the number of Binder Proxies objects held for each UID. Triggers callback when a count crosses a threshold, to handle bad behaving apps. Merged-In: I1efcc37148bc42cb7690d7eef8fa389433829564 Change-Id: I1efcc37148bc42cb7690d7eef8fa389433829564 Fixes: 63901963 Test: bit FrameworksCoreTests:android.os.BinderProxyCountingTest (cherry picked from commit d296d0cd620db158f50434a06a190334e386eab9) --- libs/binder/ProcessState.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'libs/binder/ProcessState.cpp') diff --git a/libs/binder/ProcessState.cpp b/libs/binder/ProcessState.cpp index 6e7c427b12..3e871f87f9 100644 --- a/libs/binder/ProcessState.cpp +++ b/libs/binder/ProcessState.cpp @@ -282,7 +282,7 @@ sp ProcessState::getStrongProxyForHandle(int32_t handle) return nullptr; } - b = new BpBinder(handle); + b = BpBinder::create(handle); e->binder = b; if (b) e->refs = b->getWeakRefs(); result = b; @@ -316,7 +316,7 @@ wp ProcessState::getWeakProxyForHandle(int32_t handle) // arriving from the driver. IBinder* b = e->binder; if (b == nullptr || !e->refs->attemptIncWeak(this)) { - b = new BpBinder(handle); + b = BpBinder::create(handle); result = b; e->binder = b; if (b) e->refs = b->getWeakRefs(); -- cgit v1.2.3-59-g8ed1b