[XAM] Cut handle mask from socket handles, added support for: NetDll_getsockopt

Only positive values should be interpreted as valid sockets!
This commit is contained in:
Gliniak
2022-06-08 19:59:15 +02:00
parent 25f3e16baa
commit d0175ddf2f
4 changed files with 38 additions and 1 deletions

View File

@@ -73,6 +73,16 @@ X_STATUS XSocket::Close() {
return X_STATUS_SUCCESS;
}
X_STATUS XSocket::GetOption(uint32_t level, uint32_t optname, void* optval_ptr,
int* optlen) {
int ret =
getsockopt(native_handle_, level, optname, (char*)optval_ptr, optlen);
if (ret < 0) {
// TODO: WSAGetLastError()
return X_STATUS_UNSUCCESSFUL;
}
return X_STATUS_SUCCESS;
}
X_STATUS XSocket::SetOption(uint32_t level, uint32_t optname, void* optval_ptr,
uint32_t optlen) {
if (level == 0xFFFF && (optname == 0x5801 || optname == 0x5802)) {