From 8fdbaef4c77607abf7eaeb4677473189676d03f2 Mon Sep 17 00:00:00 2001 From: Karl Seguin Date: Mon, 25 Aug 2025 22:03:58 +0800 Subject: [PATCH] Use posix.TCP.NODELAY now that it's available in MacOS also --- src/server.zig | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/server.zig b/src/server.zig index 64bfcab1..617be02b 100644 --- a/src/server.zig +++ b/src/server.zig @@ -72,12 +72,9 @@ pub const Server = struct { self.listener = listener; try posix.setsockopt(listener, posix.SOL.SOCKET, posix.SO.REUSEADDR, &std.mem.toBytes(@as(c_int, 1))); - // TODO: Broken on darwin - // https://github.com/ziglang/zig/issues/17260 (fixed in Zig 0.14) - // if (@hasDecl(os.TCP, "NODELAY")) { - // try os.setsockopt(socket.sockfd.?, os.IPPROTO.TCP, os.TCP.NODELAY, &std.mem.toBytes(@as(c_int, 1))); - // } - try posix.setsockopt(listener, posix.IPPROTO.TCP, 1, &std.mem.toBytes(@as(c_int, 1))); + if (@hasDecl(posix.TCP, "NODELAY")) { + try posix.setsockopt(listener, posix.IPPROTO.TCP, posix.TCP.NODELAY, &std.mem.toBytes(@as(c_int, 1))); + } try posix.bind(listener, &address.any, address.getOsSockLen()); try posix.listen(listener, 1);