[RpcSession] Add checks before setting SessionSpecificRoot
for the IAccessor flow.
Bug: 338541373
Test: atest vm_accessor_test
Change-Id: I59a2847040857805a1e6c12027271deaf509fd09
diff --git a/libs/binder/RpcSession.cpp b/libs/binder/RpcSession.cpp
index 21dc5c1..49def82 100644
--- a/libs/binder/RpcSession.cpp
+++ b/libs/binder/RpcSession.cpp
@@ -802,6 +802,10 @@
}
void RpcSession::setSessionSpecificRoot(const sp<IBinder>& sessionSpecificRoot) {
+ LOG_ALWAYS_FATAL_IF(mSessionSpecificRootObject != nullptr,
+ "Session specific root object already set");
+ LOG_ALWAYS_FATAL_IF(mForServer != nullptr,
+ "Session specific root object cannot be set for a server");
mSessionSpecificRootObject = sessionSpecificRoot;
}