Fix the "dangerous use of tempnam" warning in Host/SocketTest.cpp

instead, create a unique temporary directory, and place the socket file
there.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@349495 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/unittests/Host/SocketTest.cpp b/unittests/Host/SocketTest.cpp
index 59f59fc..e7e7138 100644
--- a/unittests/Host/SocketTest.cpp
+++ b/unittests/Host/SocketTest.cpp
@@ -17,6 +17,8 @@
 #include "lldb/Host/Socket.h"
 #include "lldb/Host/common/TCPSocket.h"
 #include "lldb/Host/common/UDPSocket.h"
+#include "llvm/Support/FileSystem.h"
+#include "llvm/Support/Path.h"
 
 #ifndef LLDB_DISABLE_POSIX
 #include "lldb/Host/posix/DomainSocket.h"
@@ -41,7 +43,6 @@
 
 protected:
   static void AcceptThread(Socket *listen_socket,
-                           const char *listen_remote_address,
                            bool child_processes_inherit, Socket **accept_socket,
                            Status *error) {
     *error = listen_socket->Accept(*accept_socket);
@@ -49,7 +50,7 @@
 
   template <typename SocketType>
   void CreateConnectedSockets(
-      const char *listen_remote_address,
+      llvm::StringRef listen_remote_address,
       const std::function<std::string(const SocketType &)> &get_connect_addr,
       std::unique_ptr<SocketType> *a_up, std::unique_ptr<SocketType> *b_up) {
     bool child_processes_inherit = false;
@@ -64,8 +65,8 @@
     Status accept_error;
     Socket *accept_socket;
     std::thread accept_thread(AcceptThread, listen_socket_up.get(),
-                              listen_remote_address, child_processes_inherit,
-                              &accept_socket, &accept_error);
+                              child_processes_inherit, &accept_socket,
+                              &accept_error);
 
     std::string connect_remote_address = get_connect_addr(*listen_socket_up);
     std::unique_ptr<SocketType> connect_socket_up(
@@ -158,15 +159,15 @@
 
 #ifndef LLDB_DISABLE_POSIX
 TEST_F(SocketTest, DomainListenConnectAccept) {
-  char *file_name_str = tempnam(nullptr, nullptr);
-  EXPECT_NE(nullptr, file_name_str);
-  const std::string file_name(file_name_str);
-  free(file_name_str);
+  llvm::SmallString<64> Path;
+  std::error_code EC = llvm::sys::fs::createUniqueDirectory("DomainListenConnectAccept", Path);
+  ASSERT_FALSE(EC);
+  llvm::sys::path::append(Path, "test");
 
   std::unique_ptr<DomainSocket> socket_a_up;
   std::unique_ptr<DomainSocket> socket_b_up;
   CreateConnectedSockets<DomainSocket>(
-      file_name.c_str(), [=](const DomainSocket &) { return file_name; },
+      Path, [=](const DomainSocket &) { return Path.str().str(); },
       &socket_a_up, &socket_b_up);
 }
 #endif