Bug 258665

Summary: lib/libfetch: Add Happy Eyeballs (RFC8305) support
Product: Base System Reporter: Stefan Bethke <stb>
Component: binAssignee: freebsd-bugs (Nobody) <bugs>
Status: Open ---    
Severity: Affects Some People CC: mallorya
Priority: --- Keywords: needs-patch
Version: 12.2-STABLEFlags: koobs: mfc-stable13?
koobs: mfc-stable12?
Hardware: Any   
OS: Any   
URL: https://datatracker.ietf.org/doc/html/rfc8305

Description Stefan Bethke 2021-09-21 14:41:19 UTC
fetch(8) currently picks one IP address to try and fetch a HTTP(S) resource from, and fails if the TCP connection cannot be established.

fetch(8) should implement Happy Eyeballs https://datatracker.ietf.org/doc/html/rfc6555 and try to establish connections to some or all of the IP addresses a name resolves to, and use the "best" connection to download the resource. This would improve the reliability on dual-stack systems, where sometimes, certain addresses cannot be reached, due to a variety of reasons.
Comment 1 Mark Linimon freebsd_committer freebsd_triage 2021-09-21 15:10:58 UTC
See e.g. https://marc.info/?l=openbsd-tech&m=157475113130337&w=2 .  I have not looked to see if they incorporated this patch into their tree.
Comment 2 Kubilay Kocak freebsd_committer freebsd_triage 2021-09-22 02:20:14 UTC
Note RFC6555 has been obsoleted by RFC8305
Comment 3 Stefan Bethke 2021-09-22 17:43:35 UTC
(In reply to Mark Linimon from comment #1)

I think that thread/patch is talking about OpenBSDs resolver unwind(8), not fetch/libfetch.