Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 1 Sep 2017 16:29:35 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org
Subject:   svn commit: r323098 - in vendor/lldb/dist: source/Host/common unittests/Host
Message-ID:  <201709011629.v81GTZAA095860@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Fri Sep  1 16:29:35 2017
New Revision: 323098
URL: https://svnweb.freebsd.org/changeset/base/323098

Log:
  Vendor import of lldb release_50 branch r312293:
  https://llvm.org/svn/llvm-project/lldb/branches/release_50@312293

Modified:
  vendor/lldb/dist/source/Host/common/TCPSocket.cpp
  vendor/lldb/dist/unittests/Host/SocketTest.cpp

Modified: vendor/lldb/dist/source/Host/common/TCPSocket.cpp
==============================================================================
--- vendor/lldb/dist/source/Host/common/TCPSocket.cpp	Fri Sep  1 16:29:32 2017	(r323097)
+++ vendor/lldb/dist/source/Host/common/TCPSocket.cpp	Fri Sep  1 16:29:35 2017	(r323098)
@@ -198,9 +198,14 @@ Status TCPSocket::Listen(llvm::StringRef name, int bac
     ::setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, option_value_p,
                  sizeof(option_value));
 
-    address.SetPort(port);
+    SocketAddress listen_address = address;
+    if(!listen_address.IsLocalhost())
+      listen_address.SetToAnyAddress(address.GetFamily(), port);
+    else
+      listen_address.SetPort(port);
 
-    int err = ::bind(fd, &address.sockaddr(), address.GetLength());
+    int err =
+        ::bind(fd, &listen_address.sockaddr(), listen_address.GetLength());
     if (-1 != err)
       err = ::listen(fd, backlog);
 

Modified: vendor/lldb/dist/unittests/Host/SocketTest.cpp
==============================================================================
--- vendor/lldb/dist/unittests/Host/SocketTest.cpp	Fri Sep  1 16:29:32 2017	(r323097)
+++ vendor/lldb/dist/unittests/Host/SocketTest.cpp	Fri Sep  1 16:29:35 2017	(r323098)
@@ -220,3 +220,14 @@ TEST_F(SocketTest, UDPConnect) {
   EXPECT_TRUE(error.Success());
   EXPECT_TRUE(socket_up->IsValid());
 }
+
+TEST_F(SocketTest, TCPListen0GetPort) {
+  Socket *server_socket;
+  Predicate<uint16_t> port_predicate;
+  port_predicate.SetValue(0, eBroadcastNever);
+  Status err =
+      Socket::TcpListen("10.10.12.3:0", false, server_socket, &port_predicate);
+  std::unique_ptr<TCPSocket> socket_up((TCPSocket*)server_socket);
+  EXPECT_TRUE(socket_up->IsValid());
+  EXPECT_NE(socket_up->GetLocalPortNumber(), 0);
+}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201709011629.v81GTZAA095860>