alloca: fix buf interaction
[glibc.git] / include / resolv.h
blob4c614760a858a511a4132380c3dcd86bdd762c2d
1 #ifndef _RESOLV_H_
3 #define RES_SET_H_ERRNO(r,x) \
4 do \
5 { \
6 (r)->res_h_errno = x; \
7 __set_h_errno(x); \
8 } \
9 while (0)
11 #include <stdbool.h>
12 #include <resolv/resolv.h>
14 #ifdef _RESOLV_H_
16 # if IS_IN (libc)
17 # define __resp __libc_resp
18 # endif
19 extern __thread struct __res_state *__resp attribute_tls_model_ie;
20 # undef _res
21 # define _res (*__resp)
23 /* Now define the internal interfaces. */
24 extern int __res_vinit (res_state, int);
25 extern int __res_maybe_init (res_state, int);
26 extern void _sethtent (int);
27 extern void _endhtent (void);
28 extern struct hostent *_gethtent (void);
29 extern struct hostent *_gethtbyname (const char *__name);
30 extern struct hostent *_gethtbyname2 (const char *__name, int __af);
31 struct hostent *_gethtbyaddr (const char *addr, size_t __len, int __af);
32 extern u_int32_t _getlong (const u_char *__src);
33 extern u_int16_t _getshort (const u_char *__src);
34 extern void res_pquery (const res_state __statp, const u_char *__msg,
35 int __len, FILE *__file);
36 extern void res_send_setqhook (res_send_qhook __hook);
37 extern void res_send_setrhook (res_send_rhook __hook);
38 extern int res_ourserver_p (const res_state __statp,
39 const struct sockaddr_in6 *__inp);
40 extern void __res_iclose (res_state statp, bool free_addr);
41 extern int __res_nopt(res_state statp, int n0, u_char *buf, int buflen,
42 int anslen);
43 libc_hidden_proto (__res_ninit)
44 libc_hidden_proto (__res_maybe_init)
45 libc_hidden_proto (__res_nclose)
46 libc_hidden_proto (__res_iclose)
47 libc_hidden_proto (__res_randomid)
48 libc_hidden_proto (__res_state)
50 int __libc_res_nquery (res_state, const char *, int, int, u_char *, int,
51 u_char **, u_char **, int *, int *, int *);
52 int __libc_res_nsearch (res_state, const char *, int, int, u_char *, int,
53 u_char **, u_char **, int *, int *, int *);
54 int __libc_res_nsend (res_state, const u_char *, int, const u_char *, int,
55 u_char *, int, u_char **, u_char **, int *, int *, int *)
56 attribute_hidden;
58 libresolv_hidden_proto (_sethtent)
59 libresolv_hidden_proto (_gethtent)
60 libresolv_hidden_proto (_gethtbyaddr)
61 libresolv_hidden_proto (_gethtbyname2)
62 libresolv_hidden_proto (__dn_expand)
63 libresolv_hidden_proto (__dn_comp)
64 libresolv_hidden_proto (__dn_skipname)
65 libresolv_hidden_proto (__res_hnok)
66 libresolv_hidden_proto (__res_dnok)
67 libresolv_hidden_proto (__putlong)
68 libresolv_hidden_proto (__putshort)
69 libresolv_hidden_proto (__p_cdnname)
70 libresolv_hidden_proto (__p_fqnname)
71 libresolv_hidden_proto (__p_option)
72 libresolv_hidden_proto (__sym_ntos)
73 libresolv_hidden_proto (__p_rcode)
74 libresolv_hidden_proto (__p_class)
75 libresolv_hidden_proto (__p_type)
76 libresolv_hidden_proto (__loc_ntoa)
77 libresolv_hidden_proto (__fp_nquery)
78 libresolv_hidden_proto (__fp_query)
79 libresolv_hidden_proto (__hostalias)
80 libresolv_hidden_proto (__res_nmkquery)
81 libresolv_hidden_proto (__libc_res_nquery)
82 libresolv_hidden_proto (__res_nquery)
83 libresolv_hidden_proto (__res_nquerydomain)
84 libresolv_hidden_proto (__res_hostalias)
85 libresolv_hidden_proto (__libc_res_nsearch)
86 libresolv_hidden_proto (__res_nsearch)
87 libresolv_hidden_proto (__res_nameinquery)
88 libresolv_hidden_proto (__res_queriesmatch)
89 libresolv_hidden_proto (__res_nsend)
90 libresolv_hidden_proto (__b64_ntop)
91 libresolv_hidden_proto (__res_nopt)
92 libresolv_hidden_proto (__dn_count_labels)
93 libresolv_hidden_proto (__p_secstodate)
95 extern const char *_res_opcodes[];
96 libresolv_hidden_proto (_res_opcodes)
98 #endif
100 #endif