summaryrefslogtreecommitdiff
path: root/louloulibs/network/tcp_socket_handler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'louloulibs/network/tcp_socket_handler.cpp')
-rw-r--r--louloulibs/network/tcp_socket_handler.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/louloulibs/network/tcp_socket_handler.cpp b/louloulibs/network/tcp_socket_handler.cpp
index 04bb321..cca6cd2 100644
--- a/louloulibs/network/tcp_socket_handler.cpp
+++ b/louloulibs/network/tcp_socket_handler.cpp
@@ -16,6 +16,7 @@
#include <fcntl.h>
#include <iostream>
+#include <arpa/inet.h>
#ifdef BOTAN_FOUND
# include <botan/hex.h>
@@ -159,6 +160,9 @@ void TCPSocketHandler::connect(const std::string& address, const std::string& po
break;
}
}
+
+ this->display_resolved_ip(rp);
+
if (::connect(this->socket, rp->ai_addr, rp->ai_addrlen) == 0
|| errno == EISCONN)
{
@@ -343,6 +347,19 @@ void TCPSocketHandler::close()
this->port.clear();
}
+void TCPSocketHandler::display_resolved_ip(struct addrinfo* rp) const
+{
+ char buf[INET6_ADDRSTRLEN];
+ if (rp->ai_family == AF_INET)
+ log_debug("Connecting to IP address " << ::inet_ntop(rp->ai_family,
+ &reinterpret_cast<sockaddr_in*>(rp->ai_addr)->sin_addr,
+ buf, sizeof(buf)));
+ else if (rp->ai_family == AF_INET6)
+ log_debug("Connecting to IPv6 address " << ::inet_ntop(rp->ai_family,
+ &reinterpret_cast<sockaddr_in6*>(rp->ai_addr)->sin6_addr,
+ buf, sizeof(buf)));
+}
+
void TCPSocketHandler::send_data(std::string&& data)
{
#ifdef BOTAN_FOUND