Bug 258665 - lib/libfetch: Add Happy Eyeballs (RFC8305) support
Summary: lib/libfetch: Add Happy Eyeballs (RFC8305) support
Status: Open
Alias: None
Product: Base System
Classification: Unclassified
Component: bin (show other bugs)
Version: 12.2-STABLE
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-bugs (Nobody)
URL: https://datatracker.ietf.org/doc/html...
Keywords: needs-patch
Depends on:
Blocks:
 
Reported: 2021-09-21 14:41 UTC by Stefan Bethke
Modified: 2022-06-04 17:10 UTC (History)
1 user (show)

See Also:
koobs: mfc-stable13?
koobs: mfc-stable12?


Attachments

Note You need to log in before you can comment on or make changes to this bug.
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.