diff --git a/src/core/libraries/network/posix_sockets.cpp b/src/core/libraries/network/posix_sockets.cpp index 370ab788d..2ef43f237 100644 --- a/src/core/libraries/network/posix_sockets.cpp +++ b/src/core/libraries/network/posix_sockets.cpp @@ -327,6 +327,7 @@ int PosixSocket::SetSocketOptions(int level, int optname, const void* optval, u3 CASE_SETSOCKOPT(SO_RCVTIMEO); CASE_SETSOCKOPT(SO_ERROR); CASE_SETSOCKOPT(SO_TYPE); + CASE_SETSOCKOPT_VALUE(ORBIS_NET_SO_CONNECTTIMEO, &sockopt_so_connecttimeo); CASE_SETSOCKOPT_VALUE(ORBIS_NET_SO_REUSEPORT, &sockopt_so_reuseport); CASE_SETSOCKOPT_VALUE(ORBIS_NET_SO_ONESBCAST, &sockopt_so_onesbcast); CASE_SETSOCKOPT_VALUE(ORBIS_NET_SO_USECRYPTO, &sockopt_so_usecrypto); @@ -431,6 +432,7 @@ int PosixSocket::GetSocketOptions(int level, int optname, void* optval, u32* opt CASE_GETSOCKOPT(SO_ERROR); CASE_GETSOCKOPT(SO_TYPE); CASE_GETSOCKOPT_VALUE(ORBIS_NET_SO_NBIO, sockopt_so_nbio); + CASE_GETSOCKOPT_VALUE(ORBIS_NET_SO_CONNECTTIMEO, sockopt_so_connecttimeo); CASE_GETSOCKOPT_VALUE(ORBIS_NET_SO_REUSEPORT, sockopt_so_reuseport); CASE_GETSOCKOPT_VALUE(ORBIS_NET_SO_ONESBCAST, sockopt_so_onesbcast); CASE_GETSOCKOPT_VALUE(ORBIS_NET_SO_USECRYPTO, sockopt_so_usecrypto); diff --git a/src/core/libraries/network/sockets.h b/src/core/libraries/network/sockets.h index 53d7cd98a..9a82e0d17 100644 --- a/src/core/libraries/network/sockets.h +++ b/src/core/libraries/network/sockets.h @@ -66,6 +66,7 @@ struct Socket { struct PosixSocket : public Socket { net_socket sock; + int sockopt_so_connecttimeo = 0; int sockopt_so_reuseport = 0; int sockopt_so_onesbcast = 0; int sockopt_so_usecrypto = 0;