From 30f6d2b31fe0eecd844a2d257896df2bf00884c9 Mon Sep 17 00:00:00 2001 From: Berbe <4251220+Berbe@users.noreply.github.com> Date: Tue, 28 Aug 2018 20:46:13 +0200 Subject: [PATCH] Correct client IP address not being propagated/stored --- src/openrct2/network/TcpSocket.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/openrct2/network/TcpSocket.cpp b/src/openrct2/network/TcpSocket.cpp index ff83234130..b3600f0a1d 100644 --- a/src/openrct2/network/TcpSocket.cpp +++ b/src/openrct2/network/TcpSocket.cpp @@ -210,10 +210,13 @@ public: (struct sockaddr*)&client_addr, client_len, hostName, sizeof(hostName), nullptr, 0, NI_NUMERICHOST | NI_NUMERICSERV); SetTCPNoDelay(socket, true); - tcpSocket = new TcpSocket(socket); if (rc == 0) { - _hostName = std::string(hostName); + tcpSocket = new TcpSocket(socket, hostName); + } + else + { + tcpSocket = new TcpSocket(socket, ""); } } } @@ -427,9 +430,10 @@ public: } private: - explicit TcpSocket(SOCKET socket) + explicit TcpSocket(SOCKET socket, const std::string& hostName) { _socket = socket; + _hostName = hostName; _status = SOCKET_STATUS_CONNECTED; }