diff options
Diffstat (limited to 'src/network/core')
-rw-r--r-- | src/network/core/address.cpp | 4 | ||||
-rw-r--r-- | src/network/core/address.h | 2 | ||||
-rw-r--r-- | src/network/core/tcp_connect.cpp | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/src/network/core/address.cpp b/src/network/core/address.cpp index ba9ae69fc..0c16a2c3c 100644 --- a/src/network/core/address.cpp +++ b/src/network/core/address.cpp @@ -19,7 +19,7 @@ * IPv4 dotted representation is given. * @return the hostname */ -const char *NetworkAddress::GetHostname() +const std::string &NetworkAddress::GetHostname() { if (this->hostname.empty() && this->address.ss_family != AF_UNSPEC) { assert(this->address_length != 0); @@ -27,7 +27,7 @@ const char *NetworkAddress::GetHostname() getnameinfo((struct sockaddr *)&this->address, this->address_length, buffer, sizeof(buffer), nullptr, 0, NI_NUMERICHOST); this->hostname = buffer; } - return this->hostname.c_str(); + return this->hostname; } /** diff --git a/src/network/core/address.h b/src/network/core/address.h index 46d0acef1..af10a2756 100644 --- a/src/network/core/address.h +++ b/src/network/core/address.h @@ -88,7 +88,7 @@ public: this->SetPort(port); } - const char *GetHostname(); + const std::string &GetHostname(); std::string GetAddressAsString(bool with_family = true); const sockaddr_storage *GetAddress(); diff --git a/src/network/core/tcp_connect.cpp b/src/network/core/tcp_connect.cpp index 5538416f6..f251f0288 100644 --- a/src/network/core/tcp_connect.cpp +++ b/src/network/core/tcp_connect.cpp @@ -183,7 +183,7 @@ void TCPConnecter::Resolve() auto start = std::chrono::steady_clock::now(); addrinfo *ai; - int error = getaddrinfo(address.GetHostname(), port_name, &hints, &ai); + int error = getaddrinfo(address.GetHostname().c_str(), port_name, &hints, &ai); auto end = std::chrono::steady_clock::now(); auto duration = std::chrono::duration_cast<std::chrono::seconds>(end - start); |