| 172 | } |
| 173 | |
| 174 | inline __wasi_filetype_t getSocketType(SOCKET_ Socket) noexcept { |
| 175 | int SocketType = 0; |
| 176 | int Size = sizeof(SocketType); |
| 177 | if (likely(getsockopt(Socket, SOL_SOCKET, SO_TYPE, |
| 178 | reinterpret_cast<char *>(&SocketType), &Size) == 0)) { |
| 179 | switch (SocketType) { |
| 180 | case SOCK_STREAM: |
| 181 | return __WASI_FILETYPE_SOCKET_STREAM; |
| 182 | case SOCK_DGRAM: |
| 183 | return __WASI_FILETYPE_SOCKET_DGRAM; |
| 184 | } |
| 185 | } |
| 186 | return __WASI_FILETYPE_UNKNOWN; |
| 187 | } |
| 188 | |
| 189 | inline WasiExpect<DWORD_> getAttribute(HANDLE_ Handle) noexcept { |
| 190 | #if NTDDI_VERSION >= NTDDI_VISTA |