svn commit: r323098 - in vendor/lldb/dist: source/Host/common unittests/Host
Dimitry Andric
dim at FreeBSD.org
Fri Sep 1 16:29:36 UTC 2017
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);
+}
More information about the svn-src-vendor
mailing list