Declare __res_nopt.
[kopensolaris-gnu/glibc.git] / include / resolv.h
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 # ifdef _LIBC_REENTRANT
17 #  include <tls.h>
18 #  if USE___THREAD
19 #   undef _res
20 #   ifndef NOT_IN_libc
21 #    define __resp __libc_resp
22 #   endif
23 #   define _res (*__resp)
24 extern __thread struct __res_state *__resp attribute_tls_model_ie;
25 #  endif
26 # else
27 #  ifndef __BIND_NOSTATIC
28 #   undef _res
29 extern struct __res_state _res;
30 #  endif
31 # endif
32
33 /* Now define the internal interfaces.  */
34 extern int __res_vinit (res_state, int);
35 extern int __res_maybe_init (res_state, int);
36 extern void _sethtent (int);
37 extern void _endhtent (void);
38 extern struct hostent *_gethtent (void);
39 extern struct hostent *_gethtbyname (const char *__name);
40 extern struct hostent *_gethtbyname2 (const char *__name, int __af);
41 struct hostent *_gethtbyaddr (const char *addr, size_t __len, int __af);
42 extern u_int32_t _getlong (const u_char *__src);
43 extern u_int16_t _getshort (const u_char *__src);
44 extern void res_pquery (const res_state __statp, const u_char *__msg,
45                         int __len, FILE *__file);
46 extern void res_send_setqhook (res_send_qhook __hook);
47 extern void res_send_setrhook (res_send_rhook __hook);
48 extern int res_ourserver_p (const res_state __statp,
49                             const struct sockaddr_in6 *__inp);
50 extern void __res_iclose (res_state statp, bool free_addr);
51 extern int __res_nopt(res_state statp, int n0, u_char *buf, int buflen,
52                       int anslen);
53 libc_hidden_proto (__res_ninit)
54 libc_hidden_proto (__res_maybe_init)
55 libc_hidden_proto (__res_nclose)
56 libc_hidden_proto (__res_iclose)
57 libc_hidden_proto (__res_randomid)
58 libc_hidden_proto (__res_state)
59
60 int __libc_res_nquery (res_state, const char *, int, int, u_char *, int,
61                        u_char **);
62 int __libc_res_nsearch (res_state, const char *, int, int, u_char *, int,
63                         u_char **);
64 int __libc_res_nsend (res_state, const u_char *, int, u_char *, int,
65                       u_char **)
66   attribute_hidden;
67
68 libresolv_hidden_proto (_sethtent)
69 libresolv_hidden_proto (_gethtent)
70 libresolv_hidden_proto (_gethtbyaddr)
71 libresolv_hidden_proto (_gethtbyname2)
72 libresolv_hidden_proto (__dn_expand)
73 libresolv_hidden_proto (__dn_comp)
74 libresolv_hidden_proto (__dn_skipname)
75 libresolv_hidden_proto (__res_hnok)
76 libresolv_hidden_proto (__res_dnok)
77 libresolv_hidden_proto (__putlong)
78 libresolv_hidden_proto (__putshort)
79 libresolv_hidden_proto (__p_cdnname)
80 libresolv_hidden_proto (__p_fqnname)
81 libresolv_hidden_proto (__p_option)
82 libresolv_hidden_proto (__sym_ntos)
83 libresolv_hidden_proto (__p_rcode)
84 libresolv_hidden_proto (__p_class)
85 libresolv_hidden_proto (__p_type)
86 libresolv_hidden_proto (__loc_ntoa)
87 libresolv_hidden_proto (__fp_nquery)
88 libresolv_hidden_proto (__fp_query)
89 libresolv_hidden_proto (__hostalias)
90 libresolv_hidden_proto (__res_nmkquery)
91 libresolv_hidden_proto (__libc_res_nquery)
92 libresolv_hidden_proto (__res_nquery)
93 libresolv_hidden_proto (__res_nquerydomain)
94 libresolv_hidden_proto (__res_hostalias)
95 libresolv_hidden_proto (__libc_res_nsearch)
96 libresolv_hidden_proto (__res_nsearch)
97 libresolv_hidden_proto (__res_nameinquery)
98 libresolv_hidden_proto (__res_queriesmatch)
99 libresolv_hidden_proto (__res_nsend)
100 libresolv_hidden_proto (__b64_ntop)
101 libresolv_hidden_proto (__ns_name_ntop)
102 libresolv_hidden_proto (__ns_name_unpack)
103 libresolv_hidden_proto (__ns_get16)
104 libresolv_hidden_proto (__ns_get32)
105 libresolv_hidden_proto (__res_nopt)
106
107 extern const char *_res_opcodes[];
108 libresolv_hidden_proto (_res_opcodes)
109
110 #endif
111
112 #endif