aboutsummaryrefslogtreecommitdiff
path: root/lib/std/os.zig
diff options
context:
space:
mode:
authorLuna <git@l4.pm>2019-12-01 13:12:23 -0300
committerAndrew Kelley <andrew@ziglang.org>2019-12-30 19:26:30 -0500
commit5efc0ea89e76a270a0232fdb87ca4c0448ae65be (patch)
tree1942c57594a6cb7472bdc533d0c2645b1d43df10 /lib/std/os.zig
parentea8f496970f95a11417a9c8f5a671e3676681d1e (diff)
downloadzig-5efc0ea89e76a270a0232fdb87ca4c0448ae65be.tar.gz
zig-5efc0ea89e76a270a0232fdb87ca4c0448ae65be.zip
std.os: make setsockopt receive a slice as option
Diffstat (limited to 'lib/std/os.zig')
-rw-r--r--lib/std/os.zig5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/std/os.zig b/lib/std/os.zig
index 7d20802ba8..855a61d955 100644
--- a/lib/std/os.zig
+++ b/lib/std/os.zig
@@ -3252,8 +3252,8 @@ pub fn sched_yield() SchedYieldError!void {
}
/// Set a socket's options.
-pub fn setsockopt(fd: fd_t, level: u32, optname: u32, optval: [*]const u8, optlen: socklen_t) !void {
- switch (errno(system.setsockopt(fd, level, optname, optval, optlen))) {
+pub fn setsockopt(fd: fd_t, level: u32, optname: u32, opt: []const u8) !void {
+ switch (errno(system.setsockopt(fd, level, optname, opt.ptr, @intCast(socklen_t, opt.len)))) {
0 => {},
EBADF => unreachable,
EINVAL => unreachable,
@@ -3261,7 +3261,6 @@ pub fn setsockopt(fd: fd_t, level: u32, optname: u32, optval: [*]const u8, optle
EISCONN => return error.AlreadyConnected,
ENOPROTOOPT => return error.InvalidProtocolOption,
ENOTSOCK => return error.NotSocket,
-
ENOMEM => return error.OutOfMemory,
ENOBUFS => return error.SystemResources,