From d8c8d52e1d18c417c38b3395682e03272fd6abdd Mon Sep 17 00:00:00 2001 From: Atlas Yu Date: Tue, 8 Jul 2025 17:31:09 +0800 Subject: [PATCH] std.posix.send: should expect ConnectionRefused Closes: #20219 --- lib/std/fs/File.zig | 1 + lib/std/posix.zig | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/std/fs/File.zig b/lib/std/fs/File.zig index b6f0f659bac4..231e7a5b7d82 100644 --- a/lib/std/fs/File.zig +++ b/lib/std/fs/File.zig @@ -1109,6 +1109,7 @@ pub fn writeFileAll(self: File, in_file: File, args: WriteFileOptions) WriteFile error.FileDescriptorNotASocket, error.NetworkUnreachable, error.NetworkSubsystemFailed, + error.ConnectionRefused, => return self.writeFileAllUnseekable(in_file, args), else => |e| return e, }; diff --git a/lib/std/posix.zig b/lib/std/posix.zig index c42ddd84b7a3..f46cb94e0ee0 100644 --- a/lib/std/posix.zig +++ b/lib/std/posix.zig @@ -6088,6 +6088,9 @@ pub const SendError = error{ /// The local network interface used to reach the destination is down. NetworkSubsystemFailed, + + /// The destination address is not listening. + ConnectionRefused, } || UnexpectedError; pub const SendMsgError = SendError || error{ @@ -6319,7 +6322,6 @@ pub fn send( error.AddressNotAvailable => unreachable, error.SocketNotConnected => unreachable, error.UnreachableAddress => unreachable, - error.ConnectionRefused => unreachable, else => |e| return e, }; }