From d296d0cd620db158f50434a06a190334e386eab9 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. Change-Id: I1efcc37148bc42cb7690d7eef8fa389433829564 Fixes: 63901963 Test: bit FrameworksCoreTests:android.os.BinderProxyCountingTest --- 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 11dd5258a7..44039f83a2 100644 --- a/libs/binder/ProcessState.cpp +++ b/libs/binder/ProcessState.cpp @@ -276,7 +276,7 @@ sp ProcessState::getStrongProxyForHandle(int32_t handle) return NULL; } - b = new BpBinder(handle); + b = BpBinder::create(handle); e->binder = b; if (b) e->refs = b->getWeakRefs(); result = b; @@ -310,7 +310,7 @@ wp ProcessState::getWeakProxyForHandle(int32_t handle) // arriving from the driver. IBinder* b = e->binder; if (b == NULL || !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