authorgravatar for git@l4.pmLuna <git@l4.pm> 2019-10-26 22:00:50-03:00
committergravatar for git@l4.pmLuna <git@l4.pm> 2019-10-26 22:00:50-03:00
logbf16fc210bc765202489ae83e0ad1dce8d9b4e16
tree7ab6cf25343606c2065b80a2f83294c56c6bca54
parentfafd1fd4806e4f92b19bd5285cbe8d6748a90c54

fix std.os.accept4

- add WouldBlock to list of errors in AcceptError - ptrCast addr_size to the system's socklen_t, instead of assuming it's usize

1 files changed, 5 insertions(+), 1 deletions(-)

lib/std/os.zig+5-1
......@@ -1630,6 +1630,10 @@ pub const AcceptError = error{
16301630
16311631 /// Firewall rules forbid connection.
16321632 BlockedByFirewall,
1633
1634 /// This error occurs when no global event loop is configured,
1635 /// and accepting from the socket would block.
1636 WouldBlock,
16331637} || UnexpectedError;
16341638
16351639/// Accept a connection on a socket.
......@@ -1661,7 +1665,7 @@ pub fn accept4(
16611665 flags: u32,
16621666) AcceptError!i32 {
16631667 while (true) {
1664 const rc = system.accept4(sockfd, addr, addr_size, flags);
1668 const rc = system.accept4(sockfd, addr, @ptrCast(*system.socklen_t, addr_size), flags);
16651669 switch (errno(rc)) {
16661670 0 => return @intCast(i32, rc),
16671671 EINTR => continue,