resolv: Deprecate legacy interfaces in libresolv
authorFlorian Weimer <fweimer@redhat.com>
Mon, 19 Jul 2021 05:55:27 +0000 (07:55 +0200)
committerFlorian Weimer <fweimer@redhat.com>
Mon, 19 Jul 2021 05:55:42 +0000 (07:55 +0200)
commit248dbed1187038918d79f62cd9cf631f4150c2a0
treec522c63f3934d0efdff8b2f1fdc9ae71e43951c6
parent191e4068266462e7e4c650fc8ce8e11328a9f4a1
resolv: Deprecate legacy interfaces in libresolv

Debugging interfaces: p_*, fp_*, and sym_* could conceivably be
used to produce debug out, but these functions have not been
updated to parse more resource records, so they are not very useful
today.  Likewise for ns_sprintrr and ns_sprintrrf.  ns_format_ttl and
ns_parse_ttl are related to these.

Internal implementation details: res_isourserver is probably only
useful in the implementation of a stub resolver, and so is
res_nameinquery.

Unclear semantics and bad performance: ns_samedomain, ns_subdomain,
ns_makecanon, ns_samename do textual converions & copies instead of
checking equivalence of the wire format.

inet_neta cannot handle IPv6 addresses.

res_hostalias has been superseded by getaddrinfo with AI_CANONNAME.
hostalias is not thread-safe.

Some functions have int as size arguments instead of size_t, so they
do not follow current coding practices.  However, dn_expand and
b64_ntop are somewhat widely used (to name just two examples), so
deprecating them seems problematic.

Reviewed-by: Carlos O'Donell <carlos@systemhalted.org>
NEWS
inet/arpa/inet.h
resolv/arpa/nameser.h
resolv/resolv.h