binder: RpcTranpsortCtx::newTransport Add FdTrigger arg.

For TLS, creating a new RpcTransport object may require I/O.
Make them interruptable by providing an FdTrigger argument.

Test: binderRpcTest
Bug: 190868302

Change-Id: I63a6655f50d1b2fa5a484860ec422021e88de3e5
diff --git a/libs/binder/RpcSession.cpp b/libs/binder/RpcSession.cpp
index 7799da2..4ee0128 100644
--- a/libs/binder/RpcSession.cpp
+++ b/libs/binder/RpcSession.cpp
@@ -160,7 +160,7 @@
         ALOGE("Unable to create RpcTransportCtx for null debugging client");
         return NO_MEMORY;
     }
-    auto server = ctx->newTransport(std::move(serverFd));
+    auto server = ctx->newTransport(std::move(serverFd), mShutdownTrigger.get());
     if (server == nullptr) {
         ALOGE("Unable to set up RpcTransport");
         return UNKNOWN_ERROR;
@@ -536,7 +536,7 @@
               mRpcTransportCtxFactory->toCString());
         return NO_MEMORY;
     }
-    auto server = ctx->newTransport(std::move(fd));
+    auto server = ctx->newTransport(std::move(fd), mShutdownTrigger.get());
     if (server == nullptr) {
         ALOGE("Unable to set up RpcTransport in %s context", mRpcTransportCtxFactory->toCString());
         return UNKNOWN_ERROR;