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>