1 | #ifndef _RESOLV_H_ |
2 | |
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) |
10 | |
11 | #include <stdbool.h> |
12 | #include <resolv/resolv.h> |
13 | |
14 | #ifdef _RESOLV_H_ |
15 | |
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) |
22 | |
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) |
49 | |
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; |
57 | |
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) |
94 | |
95 | extern const char *_res_opcodes[]; |
96 | libresolv_hidden_proto (_res_opcodes) |
97 | |
98 | #endif |
99 | |
100 | #endif |
101 | |