openwrt/package/utils/busybox
Baptiste Jonglez b62fa7453a busybox: disable PREFER_IPV4_ADDRESS
PREFER_IPV4_ADDRESS is broken on IPv6-only hosts, as it causes busybox
utilities (ping, traceroute, ntpd) to forcibly use the A record instead of
the AAAA record when resolving a DNS name.  This obviously fails when
there is no IPv4 connectivity.  Since IPv6-only hosts or routers will only
become more common over time, disable PREFER_IPV4_ADDRESS to support this
use-case.

As a side-effect, disabling PREFER_IPV4_ADDRESS changes the default
resolution behaviour of busybox utilities on dual-stack hosts.  Busybox
utilities now simply use the order given by getaddrinfo(), so they will
now prefer IPv6 addresses when resolving a name with both A and AAAA
records if there is IPv6 connectivity.  This is in line with RFC 6724.

PREFER_IPV4_ADDRESS was likely intended to work around naive
implementations of getaddrinfo() that could return AAAA records first,
even on an IPv4-only host.  But both musl (since 1.1.3) and glibc
correctly implement RFC 6724 for getaddrinfo() and check connectivity to
determine the correct order in which to return records.  On IPv4-only
hosts, getaddrinfo() will return A records first, so there is no need for
the PREFER_IPV4_ADDRESS hack.

See also: https://bugs.busybox.net/show_bug.cgi?id=12381

Fixes: FS#84
Fixes: FS#2608
References: https://github.com/openwrt/openwrt/pull/4167
Signed-off-by: Alexander Traud <pabstraud@compuserve.com>
Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
(cherry picked from commit 7fea9d9f5d)
2021-05-17 23:03:13 +02:00
..
config busybox: update to 1.33 2021-02-14 15:15:32 +01:00
files busybox: sysntpd: make use of new ubus hotplug.ntp object 2021-02-08 00:57:14 +00:00
patches busybox: update to 1.33.1 2021-05-14 23:36:47 +02:00
Config-defaults.in busybox: disable PREFER_IPV4_ADDRESS 2021-05-17 23:03:13 +02:00
Config.in busybox: add selinux variant 2020-08-23 23:37:08 +01:00
convert_defaults.pl busybox: add a reworked implementation of menuconfig support, this time with a guard option that keeps all symbols at default values until an extra option is activated 2014-01-31 13:50:16 +00:00
convert_menuconfig.pl busybox: adjust convert_menuconfig.pl to emit relative path references for Config.in files and refresh generated files 2016-01-03 11:38:31 +00:00
Makefile busybox: update to 1.33.1 2021-05-14 23:36:47 +02:00
selinux.config busybox: add selinux variant 2020-08-23 23:37:08 +01:00