authorgravatar for kenta@lithdew.netlithdew <kenta@lithdew.net> 2021-05-09 17:36:35+09:00
committergravatar for kenta@lithdew.netlithdew <kenta@lithdew.net> 2021-05-10 19:22:31+09:00
log6d41e086647d7b872512993e4acbf411880b48d1
tree299a8b86b62a5cdccb7cc777da27e9b00a2ef8e5
parent6cb6edb6f6e6abc73ddb1765631e22a5085f2545

x/os, os: fix setsockopt on windows, simplify Socket.setOption error set


2 files changed, 1 insertions(+), 3 deletions(-)

lib/std/os.zig+1-1
...@@ -5751,7 +5751,7 @@ pub const SetSockOptError = error{...@@ -5751,7 +5751,7 @@ pub const SetSockOptError = error{
5751/// Set a socket's options.5751/// Set a socket's options.
5752pub fn setsockopt(fd: socket_t, level: u32, optname: u32, opt: []const u8) SetSockOptError!void {5752pub fn setsockopt(fd: socket_t, level: u32, optname: u32, opt: []const u8) SetSockOptError!void {
5753 if (builtin.os.tag == .windows) {5753 if (builtin.os.tag == .windows) {
5754 const rc = windows.ws2_32.setsockopt(fd, level, optname, opt.ptr, @intCast(socklen_t, opt.len));5754 const rc = windows.ws2_32.setsockopt(fd, @intCast(i32, level), @intCast(i32, optname), opt.ptr, @intCast(i32, opt.len));
5755 if (rc == windows.ws2_32.SOCKET_ERROR) {5755 if (rc == windows.ws2_32.SOCKET_ERROR) {
5756 switch (windows.ws2_32.WSAGetLastError()) {5756 switch (windows.ws2_32.WSAGetLastError()) {
5757 .WSANOTINITIALISED => unreachable,5757 .WSANOTINITIALISED => unreachable,
lib/std/x/os/socket_windows.zig-2
...@@ -374,8 +374,6 @@ pub fn Mixin(comptime Socket: type) type {...@@ -374,8 +374,6 @@ pub fn Mixin(comptime Socket: type) type {
374 .WSAEFAULT => unreachable,374 .WSAEFAULT => unreachable,
375 .WSAENOTSOCK => return error.FileDescriptorNotASocket,375 .WSAENOTSOCK => return error.FileDescriptorNotASocket,
376 .WSAEINVAL => return error.SocketNotBound,376 .WSAEINVAL => return error.SocketNotBound,
377 .WSAENOTCONN => return error.SocketNotConnected,
378 .WSAESHUTDOWN => return error.AlreadyShutdown,
379 else => |err| windows.unexpectedWSAError(err),377 else => |err| windows.unexpectedWSAError(err),
380 };378 };
381 }379 }