Loading libs/binder/tests/BinderRpcTestServerConfig.aidl +1 −2 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ parcelable BinderRpcTestServerConfig { int rpcSecurity; int serverVersion; int vsockPort; int unixBootstrapFd; // Inherited from parent int socketFd; int socketFd; // Inherited from the parent process. @utf8InCpp String addr; } libs/binder/tests/binderRpcTest.cpp +9 −8 Original line number Diff line number Diff line Loading @@ -252,17 +252,19 @@ std::unique_ptr<ProcessSession> BinderRpc::createRpcTestSocketServerProcessEtc( singleThreaded ? "_single_threaded" : "", noKernel ? "_no_kernel" : ""); base::unique_fd bootstrapClientFd, bootstrapServerFd, socketFd; base::unique_fd bootstrapClientFd, socketFd; auto addr = allocateSocketAddress(); // Initializes the socket before the fork/exec. if (socketType == SocketType::UNIX_RAW) { socketFd = initUnixSocket(addr); } else if (socketType == SocketType::UNIX_BOOTSTRAP) { // Do not set O_CLOEXEC, bootstrapServerFd needs to survive fork/exec. // This is because we cannot pass ParcelFileDescriptor over a pipe. if (!base::Socketpair(SOCK_STREAM, &bootstrapClientFd, &bootstrapServerFd)) { if (!base::Socketpair(SOCK_STREAM, &bootstrapClientFd, &socketFd)) { int savedErrno = errno; LOG(FATAL) << "Failed socketpair(): " << strerror(savedErrno); } auto addr = allocateSocketAddress(); // Initializes the socket before the fork/exec. if (socketType == SocketType::UNIX_RAW) { socketFd = initUnixSocket(addr); } auto ret = std::make_unique<LinuxProcessSession>( Loading @@ -280,7 +282,6 @@ std::unique_ptr<ProcessSession> BinderRpc::createRpcTestSocketServerProcessEtc( serverConfig.serverVersion = serverVersion; serverConfig.vsockPort = allocateVsockPort(); serverConfig.addr = addr; serverConfig.unixBootstrapFd = bootstrapServerFd.get(); serverConfig.socketFd = socketFd.get(); for (auto mode : options.serverSupportedFileDescriptorTransportModes) { serverConfig.serverSupportedFileDescriptorTransportModes.push_back( Loading libs/binder/tests/binderRpcTestService.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -42,7 +42,7 @@ int main(int argc, const char* argv[]) { server->setSupportedFileDescriptorTransportModes(serverSupportedFileDescriptorTransportModes); unsigned int outPort = 0; base::unique_fd unixBootstrapFd(serverConfig.unixBootstrapFd); base::unique_fd socketFd(serverConfig.socketFd); switch (socketType) { case SocketType::PRECONNECTED: Loading @@ -52,10 +52,10 @@ int main(int argc, const char* argv[]) { << serverConfig.addr; break; case SocketType::UNIX_BOOTSTRAP: CHECK_EQ(OK, server->setupUnixDomainSocketBootstrapServer(std::move(unixBootstrapFd))); CHECK_EQ(OK, server->setupUnixDomainSocketBootstrapServer(std::move(socketFd))); break; case SocketType::UNIX_RAW: CHECK_EQ(OK, server->setupRawSocketServer(base::unique_fd(serverConfig.socketFd))); CHECK_EQ(OK, server->setupRawSocketServer(std::move(socketFd))); break; case SocketType::VSOCK: CHECK_EQ(OK, server->setupVsockServer(serverConfig.vsockPort)); Loading Loading
libs/binder/tests/BinderRpcTestServerConfig.aidl +1 −2 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ parcelable BinderRpcTestServerConfig { int rpcSecurity; int serverVersion; int vsockPort; int unixBootstrapFd; // Inherited from parent int socketFd; int socketFd; // Inherited from the parent process. @utf8InCpp String addr; }
libs/binder/tests/binderRpcTest.cpp +9 −8 Original line number Diff line number Diff line Loading @@ -252,17 +252,19 @@ std::unique_ptr<ProcessSession> BinderRpc::createRpcTestSocketServerProcessEtc( singleThreaded ? "_single_threaded" : "", noKernel ? "_no_kernel" : ""); base::unique_fd bootstrapClientFd, bootstrapServerFd, socketFd; base::unique_fd bootstrapClientFd, socketFd; auto addr = allocateSocketAddress(); // Initializes the socket before the fork/exec. if (socketType == SocketType::UNIX_RAW) { socketFd = initUnixSocket(addr); } else if (socketType == SocketType::UNIX_BOOTSTRAP) { // Do not set O_CLOEXEC, bootstrapServerFd needs to survive fork/exec. // This is because we cannot pass ParcelFileDescriptor over a pipe. if (!base::Socketpair(SOCK_STREAM, &bootstrapClientFd, &bootstrapServerFd)) { if (!base::Socketpair(SOCK_STREAM, &bootstrapClientFd, &socketFd)) { int savedErrno = errno; LOG(FATAL) << "Failed socketpair(): " << strerror(savedErrno); } auto addr = allocateSocketAddress(); // Initializes the socket before the fork/exec. if (socketType == SocketType::UNIX_RAW) { socketFd = initUnixSocket(addr); } auto ret = std::make_unique<LinuxProcessSession>( Loading @@ -280,7 +282,6 @@ std::unique_ptr<ProcessSession> BinderRpc::createRpcTestSocketServerProcessEtc( serverConfig.serverVersion = serverVersion; serverConfig.vsockPort = allocateVsockPort(); serverConfig.addr = addr; serverConfig.unixBootstrapFd = bootstrapServerFd.get(); serverConfig.socketFd = socketFd.get(); for (auto mode : options.serverSupportedFileDescriptorTransportModes) { serverConfig.serverSupportedFileDescriptorTransportModes.push_back( Loading
libs/binder/tests/binderRpcTestService.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -42,7 +42,7 @@ int main(int argc, const char* argv[]) { server->setSupportedFileDescriptorTransportModes(serverSupportedFileDescriptorTransportModes); unsigned int outPort = 0; base::unique_fd unixBootstrapFd(serverConfig.unixBootstrapFd); base::unique_fd socketFd(serverConfig.socketFd); switch (socketType) { case SocketType::PRECONNECTED: Loading @@ -52,10 +52,10 @@ int main(int argc, const char* argv[]) { << serverConfig.addr; break; case SocketType::UNIX_BOOTSTRAP: CHECK_EQ(OK, server->setupUnixDomainSocketBootstrapServer(std::move(unixBootstrapFd))); CHECK_EQ(OK, server->setupUnixDomainSocketBootstrapServer(std::move(socketFd))); break; case SocketType::UNIX_RAW: CHECK_EQ(OK, server->setupRawSocketServer(base::unique_fd(serverConfig.socketFd))); CHECK_EQ(OK, server->setupRawSocketServer(std::move(socketFd))); break; case SocketType::VSOCK: CHECK_EQ(OK, server->setupVsockServer(serverConfig.vsockPort)); Loading