From 8cefedcc406f62499886b51cdaf45a02fc4fed74 Mon Sep 17 00:00:00 2001 From: georgemoralis Date: Thu, 29 May 2025 11:40:09 +0300 Subject: [PATCH] review fixes --- src/core/libraries/network/net.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/core/libraries/network/net.cpp b/src/core/libraries/network/net.cpp index 12cdc7c36..9607f0d78 100644 --- a/src/core/libraries/network/net.cpp +++ b/src/core/libraries/network/net.cpp @@ -978,8 +978,6 @@ const char* freebsd_inet_ntop4(const char* src, char* dst, u64 size) { l = snprintf(tmp, sizeof(tmp), fmt, src[0], src[1], src[2], src[3]); if (l <= 0 || (socklen_t)l >= size) { - *sceNetErrnoLoc() = ORBIS_NET_ENOSPC; - LOG_ERROR(Lib_Net, "returned ORBIS_NET_ENOSPC"); return nullptr; } strlcpy(dst, tmp, size); @@ -1070,8 +1068,6 @@ const char* freebsd_inet_ntop6(const char* src, char* dst, u64 size) { * Check for overflow, copy, and we're done. */ if ((u64)(tp - tmp) > size) { - *sceNetErrnoLoc() = ORBIS_NET_ENOSPC; - LOG_ERROR(Lib_Net, "returned ORBIS_NET_ENOSPC"); return nullptr; } strcpy(dst, tmp); @@ -1083,17 +1079,24 @@ const char* PS4_SYSV_ABI sceNetInetNtop(int af, const void* src, char* dst, u32 LOG_ERROR(Lib_Net, "returned ORBIS_NET_ENOSPC"); return nullptr; } - + const char* returnvalue = nullptr; switch (af) { case ORBIS_NET_AF_INET: - return freebsd_inet_ntop4((const char*)src, dst, size); + returnvalue = freebsd_inet_ntop4((const char*)src, dst, size); + break; case ORBIS_NET_AF_INET6: - return freebsd_inet_ntop6((const char*)src, dst, size); + returnvalue = freebsd_inet_ntop6((const char*)src, dst, size); + break; default: *sceNetErrnoLoc() = ORBIS_NET_EAFNOSUPPORT; LOG_ERROR(Lib_Net, "returned ORBIS_NET_EAFNOSUPPORT"); return nullptr; } + if (returnvalue == nullptr) { + *sceNetErrnoLoc() = ORBIS_NET_ENOSPC; + LOG_ERROR(Lib_Net, "returned ORBIS_NET_ENOSPC"); + } + return returnvalue; } int PS4_SYSV_ABI sceNetInetNtopWithScopeId() {