binder - include calling PID/UID in uncaught remote exception code

Bug: 150808347
Change-Id: I7c8e69e1f71910b7e1358b91646b23380cce74a3
Test: N/A
This commit is contained in:
Steven Moreland
2023-03-27 20:42:33 +00:00
parent a7e060a986
commit 6d90e40330

View File

@@ -413,9 +413,13 @@ protected:
if (env->ExceptionCheck()) {
ScopedLocalRef<jthrowable> excep(env, env->ExceptionOccurred());
binder_report_exception(env, excep.get(),
"*** Uncaught remote exception! "
"(Exceptions are not yet supported across processes.)");
auto state = IPCThreadState::self();
String8 msg;
msg.appendFormat("*** Uncaught remote exception! Exceptions are not yet supported "
"across processes. Client PID %d UID %d.",
state->getCallingPid(), state->getCallingUid());
binder_report_exception(env, excep.get(), msg.c_str());
res = JNI_FALSE;
}
@@ -431,6 +435,7 @@ protected:
ScopedLocalRef<jthrowable> excep(env, env->ExceptionOccurred());
binder_report_exception(env, excep.get(),
"*** Uncaught exception in onBinderStrictModePolicyChange");
// TODO: should turn this to fatal?
}
// Need to always call through the native implementation of