From 0b6b2dd9033a41322c9dc6f76bf4501b0febf5d5 Mon Sep 17 00:00:00 2001 From: georgemoralis Date: Fri, 10 Jan 2025 20:16:03 +0200 Subject: [PATCH] added case in SetSocketOptions for tony hawk 5 --- src/core/libraries/network/posix_sockets.cpp | 7 +++++++ src/core/libraries/network/sockets.h | 1 + 2 files changed, 8 insertions(+) diff --git a/src/core/libraries/network/posix_sockets.cpp b/src/core/libraries/network/posix_sockets.cpp index 3ca4bafc7..bece54262 100644 --- a/src/core/libraries/network/posix_sockets.cpp +++ b/src/core/libraries/network/posix_sockets.cpp @@ -52,6 +52,13 @@ int PosixSocket::SetSocketOptions(int level, int optname, const void* optval, un case ORBIS_NET_SO_SNDTIMEO: return ConvertReturnErrorCode( setsockopt(sock, level, SO_SNDTIMEO, (const char*)optval, optlen)); + case ORBIS_NET_SO_ONESBCAST: { + if (optlen != sizeof(sockopt_so_onesbcast)) { + return ORBIS_NET_ERROR_EFAULT; + } + memcpy(&sockopt_so_onesbcast, optval, optlen); + return 0; + } case ORBIS_NET_SO_NBIO: { if (optlen != sizeof(sockopt_so_nbio)) { return ORBIS_NET_ERROR_EFAULT; diff --git a/src/core/libraries/network/sockets.h b/src/core/libraries/network/sockets.h index 7c5f7a56c..f6c3bec82 100644 --- a/src/core/libraries/network/sockets.h +++ b/src/core/libraries/network/sockets.h @@ -45,6 +45,7 @@ struct Socket { struct PosixSocket : public Socket { net_socket sock; int sockopt_so_nbio = 0; + int sockopt_so_onesbcast = 0; explicit PosixSocket(int domain, int type, int protocol) : Socket(domain, type, protocol), sock(socket(domain, type, protocol)) {} int SetSocketOptions(int level, int optname, const void* optval, unsigned int optlen) override;