Skip to content

Commit 8d95e6f

Browse files
committed
std: add windows.closesocket
1 parent 2f24a39 commit 8d95e6f

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

lib/std/os/windows.zig

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -684,6 +684,16 @@ pub fn WSASocketW(
684684
return rc;
685685
}
686686

687+
pub fn closesocket(s: ws2_32.SOCKET) !void {
688+
switch(ws2_32.closesocket(s)) {
689+
0 => {},
690+
ws2_32.SOCKET_ERROR => switch (ws2_32.WSAGetLastError()) {
691+
else => |err| return unexpectedWSAError(err),
692+
},
693+
else => unreachable,
694+
}
695+
}
696+
687697
pub fn WSAIoctl(
688698
s: ws2_32.SOCKET,
689699
dwIoControlCode: DWORD,

lib/std/os/windows/ws2_32.zig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,6 +244,7 @@ pub extern "ws2_32" stdcallcc fn WSASocketW(
244244
g: GROUP,
245245
dwFlags: DWORD,
246246
) SOCKET;
247+
pub extern "ws2_32" stdcallcc fn closesocket(s: SOCKET) c_int;
247248
pub extern "ws2_32" stdcallcc fn WSAIoctl(
248249
s: SOCKET,
249250
dwIoControlCode: DWORD,

0 commit comments

Comments
 (0)