From 248dbed1187038918d79f62cd9cf631f4150c2a0 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Mon, 19 Jul 2021 07:55:27 +0200 Subject: 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 --- NEWS | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'NEWS') diff --git a/NEWS b/NEWS index 13ffe62..4df348c 100644 --- a/NEWS +++ b/NEWS @@ -93,6 +93,20 @@ Deprecated and removed features, and other changes affecting compatibility: * The function pthread_yield has been deprecated; programs should use the equivalent standard function sched_yield instead. +* The function inet_neta declared in has been deprecated. + +* Various rarely-used functions declared in and + have been deprecated. Applications are encouraged to + use dedicated DNS processing libraries if applicable. For , + this affects the functions dn_count_labels, fp_nquery, fp_query, + fp_resstat, hostalias, loc_aton, loc_ntoa, p_cdname, p_cdnname, + p_class, p_fqname, p_fqnname, p_option, p_query, p_rcode, p_time, + p_type, putlong, putshort, res_hostalias, res_isourserver, + res_nameinquery, res_queriesmatch, res_randomid, sym_ntop, sym_ntos, + sym_ston. For , the functions ns_datetosecs, + ns_format_ttl, ns_makecanon, ns_parse_ttl, ns_samedomain, ns_samename, + ns_sprintrr, ns_sprintrrf, ns_subdomain have been deprecated. + * The pthread cancellation handler is now installed with SA_RESTART and pthread_cancel will always send the internal SIGCANCEL on a cancellation request. It should not be visible to application since the cancellation -- cgit v1.1