mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-10-30 10:45:40 +03:00 
			
		
		
		
	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.
		
			
				
	
	
		
			101 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			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;
 | |
|   }
 | |
| }
 |