From 4835a173bdd8e3829c5c5b4ac9208d947506d9b0 Mon Sep 17 00:00:00 2001 From: waddlesplash Date: Wed, 29 Apr 2020 13:50:03 +0000 Subject: [PATCH] Revert "net_socket: getpeername now only works on connected socket" This reverts commit 04fac889f75b32790b39753276f33b6b756fc779. Reason for revert: Breaks Qt, the behavior is incorrect it seems. Change-Id: I09d35c214c899d0c06d7780b13db795fb2a3393a Reviewed-on: https://review.haiku-os.org/c/haiku/+/2538 Reviewed-by: waddlesplash --- src/add-ons/kernel/network/stack/net_socket.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/add-ons/kernel/network/stack/net_socket.cpp b/src/add-ons/kernel/network/stack/net_socket.cpp index d38cf648ba..414acc5e2c 100644 --- a/src/add-ons/kernel/network/stack/net_socket.cpp +++ b/src/add-ons/kernel/network/stack/net_socket.cpp @@ -1054,11 +1054,10 @@ socket_connect(net_socket* socket, const struct sockaddr* address, int -socket_getpeername(net_socket* _socket, struct sockaddr* address, +socket_getpeername(net_socket* socket, struct sockaddr* address, socklen_t* _addressLength) { - net_socket_private* socket = (net_socket_private*)_socket; - if (!socket->is_connected || socket->peer.ss_len == 0) + if (socket->peer.ss_len == 0) return ENOTCONN; memcpy(address, &socket->peer, min_c(*_addressLength, socket->peer.ss_len));