public static SocketError SetBlocking(SafeCloseSocket handle, bool shouldBlock, out bool willBlock) { handle.IsNonBlocking = !shouldBlock; willBlock = shouldBlock; return SocketError.Success; }