resolv_mt.h revision 303975
1#ifndef _RESOLV_MT_H 2#define _RESOLV_MT_H 3 4#include <sys/types.h> 5#include <netinet/in.h> 6#include <arpa/nameser.h> 7#include <resolv.h> 8 9/* Access functions for the libresolv private interface */ 10 11int __res_enable_mt(void); 12int __res_disable_mt(void); 13 14/* Per-thread context */ 15 16typedef struct { 17int no_hosts_fallback_private; 18int retry_save; 19int retry_private; 20char inet_nsap_ntoa_tmpbuf[255*3]; 21char sym_ntos_unname[20]; 22char sym_ntop_unname[20]; 23char p_option_nbuf[40]; 24char p_time_nbuf[40]; 25char precsize_ntoa_retbuf[sizeof "90000000.00"]; 26char loc_ntoa_tmpbuf[sizeof 27"1000 60 60.000 N 1000 60 60.000 W -12345678.00m 90000000.00m 90000000.00m 90000000.00m"]; 28char p_secstodate_output[15]; 29} mtctxres_t; 30 31/* Thread-specific data (TSD) */ 32 33mtctxres_t *___mtctxres(void); 34#define mtctxres (___mtctxres()) 35 36/* Various static data that should be TSD */ 37 38#define sym_ntos_unname (mtctxres->sym_ntos_unname) 39#define sym_ntop_unname (mtctxres->sym_ntop_unname) 40#define inet_nsap_ntoa_tmpbuf (mtctxres->inet_nsap_ntoa_tmpbuf) 41#define p_option_nbuf (mtctxres->p_option_nbuf) 42#define p_time_nbuf (mtctxres->p_time_nbuf) 43#define precsize_ntoa_retbuf (mtctxres->precsize_ntoa_retbuf) 44#define loc_ntoa_tmpbuf (mtctxres->loc_ntoa_tmpbuf) 45#define p_secstodate_output (mtctxres->p_secstodate_output) 46 47#endif /* _RESOLV_MT_H */ 48