glibc/resolv/Versions
Ulrich Drepper 1eb946b935 * include/resolv.h: Adjust __libc_res_nquery and __libc_res_nsend
prototypes.
	* include/arpa/nameser_compat.h: Define T_UNSPEC.
	* nis/Versions (libnss_nis): Export _nss_nis_gethostbyname4_r.
	(libnss_nisplus): Export _nss_nisplus_gethostbyname4_r.
	* nis/nss_nis/nis-hosts.c (LINE_PARSER): Change to also handle
	af==AF_UNSPEC.
	(_nss_nis_gethostbyname4_r): New function.
	* nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_parse_hostent):
	Change to also handle af==AF_UNSPEC.
	(get_tablename): New function.  Use it to avoid duplication.
	(_nss_nisplus_gethostbyname4_r): New function.
	* nscd/aicache.c (addhstaiX): Use gethostbyname4_r function is
	available.
	* nss/Versions (libnss_files): Export _nss_files_gethostbyname4_r.
	* nss/nss.h: Define struct gaih_addrtuple.
	* nss/nss_files/files-hosts.c (LINE_PARSER): Change to also handle
	af==AF_UNSPEC.
	(_nss_files_gethostbyname4_r): New function.
	* resolv/Versions (libnss_dns): Export _nss_dns_gethostbyname4_r.
	* resolv/gethnmaddr.c: Adjust __libc_res_nsearch and __libc_res_nquery
	calls.
	* resolv/res_query.c (__libc_res_nquery): Take two additional
	parameters for second answer buffer.  Handle type=T_UNSPEC to mean
	look up IPv4 and IPv6.
	Change all callers.
	* resolv/res_send.c (__libc_res_nsend): Take five aditional parameters
	for an additional query and answer buffer.  Pass to send_vc and
	send_dg.
	(send_vc): Send possibly two requests and receive two answers.
	(send_dg): Likewise.
	* resolv/nss_dns/dns-host.c: Adjust calls to __libc_res_nsearch and
	__libc_res_nquery.
	(_nss_dns_gethostbyname4_r): New function.
	(gaih_getanswer_slice): Likewise.
	(gaih_getanswer): Likewise.
	* resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Adjust
	__libc_res_nquery call.
	* resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
	(_nss_dns_getnetbyname_r): Adjust __libc_res_nsearch call.
	* sysdeps/posix/getaddrinfo.c: Use gethostbyname4_r function is
	available.
2008-05-10 23:27:39 +00:00

101 lines
2.4 KiB
Plaintext

%include <tls.h>
libc {
GLIBC_2.0 {
%if !HAVE___THREAD
# global variables
_h_errno;
%endif
_res;
# helper functions
__h_errno_location;
# functions used in other libraries
__res_randomid;
# variables in normal name space
h_errlist; h_nerr;
%if !HAVE___THREAD
h_errno;
%endif
# h*
herror; hstrerror;
# r*
res_init;
}
GLIBC_2.2 {
# r*
__res_state; __res_init; __res_nclose; __res_ninit; _res_hconf;
}
GLIBC_PRIVATE {
__gai_sigqueue;
%if HAVE___THREAD
# This version is for the TLS symbol, GLIBC_2.0 is the old object symbol.
h_errno; __resp;
%endif
__res_maybe_init; __res_iclose;
}
}
libresolv {
GLIBC_2.0 {
_gethtbyaddr; _gethtbyname; _gethtbyname2; _gethtent; _getlong;
_getshort; _res_opcodes; _res_resultcodes; _sethtent; dn_expand;
inet_net_ntop; inet_net_pton; inet_neta; res_gethostbyaddr;
res_gethostbyname; res_gethostbyname2; res_mkquery; res_query;
res_querydomain; res_search; res_send_setqhook; res_send_setrhook;
# Variables
__p_class_syms; __p_type_syms;
# Private routines shared between libc/net, named, nslookup and others.
__b64_ntop; __b64_pton;
__dn_comp; __dn_count_labels; __dn_skipname;
__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_rr; __p_secstodate; __p_time; __p_type;
__putlong; __putshort;
__res_close; __res_dnok; __res_hnok; __res_isourserver; __res_mailok;
__res_nameinquery; __res_ownok; __res_queriesmatch;
__res_send;
__sym_ntop; __sym_ntos; __sym_ston;
}
GLIBC_2.2 {
__dn_expand;
__res_hostalias; __res_mkquery; __res_nmkquery; __res_nquery;
__res_nquerydomain; __res_nsearch; __res_nsend; __res_query;
__res_querydomain; __res_search;
}
GLIBC_2.3.2 {
__p_rcode;
}
GLIBC_PRIVATE {
# Needed in libnss_dns.
__ns_name_unpack; __ns_name_ntop;
__ns_get16; __ns_get32;
__libc_res_nquery; __libc_res_nsearch;
}
}
libnss_dns {
GLIBC_PRIVATE {
_nss_dns_gethostbyaddr_r; _nss_dns_gethostbyname2_r;
_nss_dns_gethostbyname3_r;
_nss_dns_gethostbyname_r; _nss_dns_getnetbyaddr_r;
_nss_dns_getnetbyname_r; _nss_dns_getcanonname_r;
_nss_dns_gethostbyaddr2_r;
_nss_dns_gethostbyname4_r;
}
}
libanl {
GLIBC_2.2.3 {
getaddrinfo_a; gai_cancel; gai_error; gai_suspend;
}
}