diff --git a/src/net/tcp_server_socket.cpp b/src/net/tcp_server_socket.cpp
index 461028ad704eaaa00d4cb04a2a66db16cdd22e45..e938ac5a028726b267be05802b59cb36dcbf26f6 100644
--- a/src/net/tcp_server_socket.cpp
+++ b/src/net/tcp_server_socket.cpp
@@ -97,9 +97,10 @@ void tcp_server_socket::await_raw_socket_incomming(
 ) {
     MARK_UNUSED(ass);
 
-    struct sockaddr_in client_addr;
+    struct sockaddr_storage client_addr;
     socklen_t client_len = sizeof(client_addr);
     int client_fd_raw = accept(socket.get(), (struct sockaddr*)&client_addr, &client_len);
+    socketaddr address{client_addr};
 
     if (client_fd_raw < 0) {
         throw netio_exception("Unable to bind incoming client");
@@ -113,9 +114,6 @@ void tcp_server_socket::await_raw_socket_incomming(
         throw netio_exception("Failed to set socket mode. fcntl resulted in error:" + std::to_string(errno));
     }
 
-    const std::string address = inet_ntoa(client_addr.sin_addr);
-    const uint16_t port = ntohs(client_addr.sin_port);
-
     // Generate client object from fd and announce it
     this->number_of_connected_clients++;
     using namespace std::placeholders;
@@ -129,10 +127,10 @@ void tcp_server_socket::await_raw_socket_incomming(
     }
 
     if (this->max_number_of_simulataneusly_allowed_clients == 0 || this->get_number_of_connected_clients() <= this->max_number_of_simulataneusly_allowed_clients) {
-        this->client_listener(tcp_client(std::bind(&tcp_server_socket::client_destructed_cb, this, _1), auto_fd(client_fd_raw), address, port));
+        this->client_listener(tcp_client(std::bind(&tcp_server_socket::client_destructed_cb, this, _1), auto_fd(client_fd_raw), address));
     } else {
         if (this->overflow_client_listener != nullptr) {
-            this->overflow_client_listener(tcp_client(std::bind(&tcp_server_socket::client_destructed_cb, this, _1), auto_fd(client_fd_raw), address, port));
+            this->overflow_client_listener(tcp_client(std::bind(&tcp_server_socket::client_destructed_cb, this, _1), auto_fd(client_fd_raw), address));
         }
     }
 }