From a7e20d6e851d6ac8c56fc6233ddc2a8f8309720c Mon Sep 17 00:00:00 2001
From: Bananymous <oskari.alaranta@bananymous.com>
Date: Fri, 6 Jun 2025 06:52:56 +0300
Subject: [PATCH] LibC: Fix getnameinfo port endianness

---
 userspace/libraries/LibC/netdb.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/userspace/libraries/LibC/netdb.cpp b/userspace/libraries/LibC/netdb.cpp
index 90d64076..aed2f8a0 100644
--- a/userspace/libraries/LibC/netdb.cpp
+++ b/userspace/libraries/LibC/netdb.cpp
@@ -160,7 +160,7 @@ int getnameinfo(const struct sockaddr* __restrict sa, socklen_t salen, char* __r
 			const sockaddr_in* sa_in = reinterpret_cast<const sockaddr_in*>(sa);
 			if (node && !inet_ntop(sa_in->sin_family, &sa_in->sin_addr, node, nodelen))
 				return EAI_SYSTEM;
-			if (service && snprintf(service, servicelen, "%d", sa_in->sin_port) < 0)
+			if (service && snprintf(service, servicelen, "%d", ntohs(sa_in->sin_port)) < 0)
 				return EAI_SYSTEM;
 			break;
 		}
@@ -171,7 +171,7 @@ int getnameinfo(const struct sockaddr* __restrict sa, socklen_t salen, char* __r
 			const sockaddr_in6* sa_in6 = reinterpret_cast<const sockaddr_in6*>(sa);
 			if (node && !inet_ntop(sa_in6->sin6_family, &sa_in6->sin6_addr, node, nodelen))
 				return EAI_SYSTEM;
-			if (service && snprintf(service, servicelen, "%d", sa_in6->sin6_port) < 0)
+			if (service && snprintf(service, servicelen, "%d", ntohs(sa_in6->sin6_port)) < 0)
 				return EAI_SYSTEM;
 			break;
 		}