authorgravatar for kfprimm@gmail.comKevin Primm <kfprimm@gmail.com> 2025-11-18 11:23:50-05:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-01-08 20:44:47-08:00
logb929078dac59c480f03797af9308b696fb03807e
treebf5160b8d64dc0cf44d14bd7ec8cc6d563379f9c
parentefe649b13e582be855376944bac1346426e238d6

`std.Io.Threaded`: Raise specific error when DNS lookup returns no A/AAAA records

closes #25948

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

lib/std/Io/Threaded.zig+2-2
......@@ -12618,7 +12618,7 @@ fn lookupDnsSearch(
1261812618 if (lookupDns(t, lookup_canon_name, &rc, resolved, options)) |result| {
1261912619 return result;
1262012620 } else |err| switch (err) {
12621 error.UnknownHostName => continue,
12621 error.UnknownHostName, error.NoAddressReturned => continue,
1262212622 else => |e| return e,
1262312623 }
1262412624 }
......@@ -12813,7 +12813,7 @@ fn lookupDns(
1281312813 }
1281412814
1281512815 try resolved.putOne(t_io, .{ .canonical_name = canonical_name orelse .{ .bytes = lookup_canon_name } });
12816 if (addresses_len == 0) return error.NameServerFailure;
12816 if (addresses_len == 0) return error.NoAddressReturned;
1281712817}
1281812818
1281912819fn lookupHosts(
lib/std/Io/net/HostName.zig+1
......@@ -142,6 +142,7 @@ pub const LookupError = error{
142142 InvalidDnsAAAARecord,
143143 InvalidDnsCnameRecord,
144144 NameServerFailure,
145 NoAddressReturned,
145146 /// Failed to open or read "/etc/hosts" or "/etc/resolv.conf".
146147 DetectingNetworkConfigurationFailed,
147148} || Io.Clock.Error || IpAddress.BindError || Io.Cancelable;