diff options
| author | 2020-01-20 18:41:48 +0000 | |
|---|---|---|
| committer | 2020-01-20 18:41:48 +0000 | |
| commit | 9b986d38e35f4bc2776501b7ce0440331b196c9e (patch) | |
| tree | d761073ee881c804ef8a22bdaf69e0f5e4a2e2be /usr.sbin/bind/lib/isc/unix/socket.c | |
| parent | Reduce tsig support to what is needed by dig et al by removing the (diff) | |
| download | wireguard-openbsd-9b986d38e35f4bc2776501b7ce0440331b196c9e.tar.xz wireguard-openbsd-9b986d38e35f4bc2776501b7ce0440331b196c9e.zip | |
Fix a address family desynchronisation between lwres_conf and
dig_serverlist.
In one of the first shredding commits lwres unintentionally lost the
ability to track if the user requested IPv4 only or IPv6 only
operations. Parsing of /etc/resolv.conf would add all nameservers,
ignoring their address family.
When dig(1) later populated server_list it would pay attention to
the address family.
If /etc/resolv.conf contains only IPv4 nameservers and it has 3 or
more and the user requests IPv6 only operations dig would fail with
"add_nameserver failed". This happens because lwres_conf already
contains 3 nameservers but server_list is empty so dig tries to add
::1 to lwres_conf.
It feels like this is very convoluted but it restores previous
behavoir the way it was implemented before. Thus sidestepping some
refactoring.
OK millert
Diffstat (limited to 'usr.sbin/bind/lib/isc/unix/socket.c')
0 files changed, 0 insertions, 0 deletions
