|
|
|
@ -693,6 +693,8 @@ std::pair<SocketBase::AcceptResult, Errno> Socket::Accept() {
|
|
|
|
|
sockaddr_in addr;
|
|
|
|
|
socklen_t addrlen = sizeof(addr);
|
|
|
|
|
|
|
|
|
|
const bool wait_for_accept = !is_non_blocking;
|
|
|
|
|
if (wait_for_accept) {
|
|
|
|
|
std::vector<WSAPOLLFD> host_pollfds{
|
|
|
|
|
WSAPOLLFD{fd, POLLIN, 0},
|
|
|
|
|
WSAPOLLFD{GetInterruptSocket(), POLLIN, 0},
|
|
|
|
@ -709,6 +711,7 @@ std::pair<SocketBase::AcceptResult, Errno> Socket::Accept() {
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const SOCKET new_socket = accept(fd, reinterpret_cast<sockaddr*>(&addr), &addrlen);
|
|
|
|
|
|
|
|
|
@ -913,6 +916,7 @@ Errno Socket::SetRcvTimeo(u32 value) {
|
|
|
|
|
|
|
|
|
|
Errno Socket::SetNonBlock(bool enable) {
|
|
|
|
|
if (EnableNonBlock(fd, enable)) {
|
|
|
|
|
is_non_blocking = enable;
|
|
|
|
|
return Errno::SUCCESS;
|
|
|
|
|
}
|
|
|
|
|
return GetAndLogLastError();
|
|
|
|
|