xref: /onnv-gate/usr/src/lib/libresolv2/include/port_netdb.h (revision 11038:74b12212b8a2)
1*11038SRao.Shoaib@Sun.COM /*
2*11038SRao.Shoaib@Sun.COM  * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
3*11038SRao.Shoaib@Sun.COM  * Use is subject to license terms.
4*11038SRao.Shoaib@Sun.COM  */
5*11038SRao.Shoaib@Sun.COM 
6*11038SRao.Shoaib@Sun.COM 
7*11038SRao.Shoaib@Sun.COM #ifndef _PORT_NETDB_H
8*11038SRao.Shoaib@Sun.COM #define	_PORT_NETDB_H
9*11038SRao.Shoaib@Sun.COM 
10*11038SRao.Shoaib@Sun.COM #ifdef	__cplusplus
11*11038SRao.Shoaib@Sun.COM extern "C" {
12*11038SRao.Shoaib@Sun.COM #endif
13*11038SRao.Shoaib@Sun.COM 
14*11038SRao.Shoaib@Sun.COM /* AI_NUMERICSERV is not a valid flag for getaddrinfo */
15*11038SRao.Shoaib@Sun.COM #define	AI_MASK		0x0038	/* mask of valid flags */
16*11038SRao.Shoaib@Sun.COM 
17*11038SRao.Shoaib@Sun.COM /* EAI_OVERFLOW was removed from ISC */
18*11038SRao.Shoaib@Sun.COM #define	EAI_BADHINTS  12
19*11038SRao.Shoaib@Sun.COM 
20*11038SRao.Shoaib@Sun.COM /*
21*11038SRao.Shoaib@Sun.COM  * these are libresolv2 functions that were renamed in previous versions to
22*11038SRao.Shoaib@Sun.COM  * res_* because they conflict with libnsl or libsocket
23*11038SRao.Shoaib@Sun.COM  */
24*11038SRao.Shoaib@Sun.COM 
25*11038SRao.Shoaib@Sun.COM #define	endhostent res_endhostent /* libnsl */
26*11038SRao.Shoaib@Sun.COM void endhostent __P((void));
27*11038SRao.Shoaib@Sun.COM #define	endnetent res_endnetent  /* libsocket */
28*11038SRao.Shoaib@Sun.COM void endnetent __P((void));
29*11038SRao.Shoaib@Sun.COM #define	freeaddrinfo res_freeaddrinfo /* libsocket */
30*11038SRao.Shoaib@Sun.COM void freeaddrinfo __P((struct addrinfo *));
31*11038SRao.Shoaib@Sun.COM #define	freehostent res_freehostent  /* libsocket and libnsl */
32*11038SRao.Shoaib@Sun.COM void freehostent __P((struct hostent *));
33*11038SRao.Shoaib@Sun.COM #define	getaddrinfo res_getaddrinfo  /* libsocket */
34*11038SRao.Shoaib@Sun.COM int getaddrinfo __P((const char *, const char *,
35*11038SRao.Shoaib@Sun.COM 				const struct addrinfo *, struct addrinfo **));
36*11038SRao.Shoaib@Sun.COM #define	gethostbyaddr res_gethostbyaddr /* libnsl */
37*11038SRao.Shoaib@Sun.COM struct hostent *gethostbyaddr __P((const char *, int, int));
38*11038SRao.Shoaib@Sun.COM #define	gethostbyname res_gethostbyname /* libnsl */
39*11038SRao.Shoaib@Sun.COM struct hostent *gethostbyname __P((const char *));
40*11038SRao.Shoaib@Sun.COM #define	gethostbyname2 res_gethostbyname2 /* lib/nsswitch/dns */
41*11038SRao.Shoaib@Sun.COM struct hostent *gethostbyname2 __P((const char *, int));
42*11038SRao.Shoaib@Sun.COM #define	gethostent res_gethostent  /* libnsl */
43*11038SRao.Shoaib@Sun.COM struct hostent *gethostent __P((void));
44*11038SRao.Shoaib@Sun.COM #define	getipnodebyaddr res_getipnodebyaddr  /* libnsl and libsocket */
45*11038SRao.Shoaib@Sun.COM struct hostent *getipnodebyaddr __P((const void *, size_t, int, int *));
46*11038SRao.Shoaib@Sun.COM #define	getipnodebyname res_getipnodebyname  /* libnsl and libsocket */
47*11038SRao.Shoaib@Sun.COM struct hostent *getipnodebyname __P((const char *, int, int, int *));
48*11038SRao.Shoaib@Sun.COM 
49*11038SRao.Shoaib@Sun.COM #define	getnetbyaddr res_getnetbyaddr /* libsocket */
50*11038SRao.Shoaib@Sun.COM struct netent *getnetbyaddr __P((unsigned long, int));
51*11038SRao.Shoaib@Sun.COM #define	getnetbyname res_getnetbyname /* libsocket */
52*11038SRao.Shoaib@Sun.COM struct netent *getnetbyname __P((const char *));
53*11038SRao.Shoaib@Sun.COM #define	getnetent res_getnetent /* libsocket */
54*11038SRao.Shoaib@Sun.COM struct netent *getnetent __P((void));
55*11038SRao.Shoaib@Sun.COM #define	sethostent res_sethostent /* libnsl */
56*11038SRao.Shoaib@Sun.COM void sethostent __P((int));
57*11038SRao.Shoaib@Sun.COM #define	setnetent res_setnetent /* libsocket */
58*11038SRao.Shoaib@Sun.COM void setnetent __P((int));
59*11038SRao.Shoaib@Sun.COM 
60*11038SRao.Shoaib@Sun.COM /*
61*11038SRao.Shoaib@Sun.COM  * these are other irs functions now included in libresolv.so.2. We rename the
62*11038SRao.Shoaib@Sun.COM  * ones that overlap with libsocket or libnsl
63*11038SRao.Shoaib@Sun.COM  */
64*11038SRao.Shoaib@Sun.COM 
65*11038SRao.Shoaib@Sun.COM /* endprotoent is in libsocket.so.1 */
66*11038SRao.Shoaib@Sun.COM #define	endprotoent res_endprotoent
67*11038SRao.Shoaib@Sun.COM void		endprotoent __P((void));
68*11038SRao.Shoaib@Sun.COM 
69*11038SRao.Shoaib@Sun.COM /* endservent is in libsocket.so.1 */
70*11038SRao.Shoaib@Sun.COM #define	endservent res_endservent
71*11038SRao.Shoaib@Sun.COM void		endservent __P((void));
72*11038SRao.Shoaib@Sun.COM 
73*11038SRao.Shoaib@Sun.COM /* note: the next two symbols are variables, not functions */
74*11038SRao.Shoaib@Sun.COM 
75*11038SRao.Shoaib@Sun.COM /* gai_errlist is in libsocket.so.1 */
76*11038SRao.Shoaib@Sun.COM #define	gai_errlist res_gai_errlist
77*11038SRao.Shoaib@Sun.COM 
78*11038SRao.Shoaib@Sun.COM /* gai_nerr is in libsocket.so.1 */
79*11038SRao.Shoaib@Sun.COM #define	gai_nerr res_gai_nerr
80*11038SRao.Shoaib@Sun.COM 
81*11038SRao.Shoaib@Sun.COM /* gai_strerror is in libsocket.so.1 */
82*11038SRao.Shoaib@Sun.COM #define	gai_strerror res_gai_strerror
83*11038SRao.Shoaib@Sun.COM const char *gai_strerror __P((int ecode));
84*11038SRao.Shoaib@Sun.COM 
85*11038SRao.Shoaib@Sun.COM /* gethostbyaddr_r is in libnsl.so.1 */
86*11038SRao.Shoaib@Sun.COM #define	gethostbyaddr_r res_gethostbyaddr_r
87*11038SRao.Shoaib@Sun.COM struct hostent *gethostbyaddr_r __P((const char *addr, int len, int type,
88*11038SRao.Shoaib@Sun.COM 				struct hostent *hptr, char *buf,
89*11038SRao.Shoaib@Sun.COM 				int buflen, int *h_errnop));
90*11038SRao.Shoaib@Sun.COM 
91*11038SRao.Shoaib@Sun.COM /* gethostbyname_r is in libnsl.so.1 */
92*11038SRao.Shoaib@Sun.COM #define	gethostbyname_r res_gethostbyname_r
93*11038SRao.Shoaib@Sun.COM struct hostent *gethostbyname_r __P((const char *name,	 struct hostent *hptr,
94*11038SRao.Shoaib@Sun.COM 				char *buf, int buflen, int *h_errnop));
95*11038SRao.Shoaib@Sun.COM 
96*11038SRao.Shoaib@Sun.COM /* gethostent_r is in libnsl.so.1 */
97*11038SRao.Shoaib@Sun.COM #define	gethostent_r res_gethostent_r
98*11038SRao.Shoaib@Sun.COM struct hostent *gethostent_r __P((struct hostent *hptr, char *buf, int buflen,
99*11038SRao.Shoaib@Sun.COM 				int *h_errnop));
100*11038SRao.Shoaib@Sun.COM 
101*11038SRao.Shoaib@Sun.COM /* getnameinfo is in libsocket.so.1 */
102*11038SRao.Shoaib@Sun.COM #define	getnameinfo res_getnameinfo
103*11038SRao.Shoaib@Sun.COM int getnameinfo __P((const struct sockaddr *, size_t, char *,
104*11038SRao.Shoaib@Sun.COM 				size_t, char *, size_t, int));
105*11038SRao.Shoaib@Sun.COM 
106*11038SRao.Shoaib@Sun.COM /* getnetbyaddr_r is in libsocket.so.1 */
107*11038SRao.Shoaib@Sun.COM #define	getnetbyaddr_r res_getnetbyaddr_r
108*11038SRao.Shoaib@Sun.COM struct netent *getnetbyaddr_r __P((long, int, struct netent *, char *, int));
109*11038SRao.Shoaib@Sun.COM 
110*11038SRao.Shoaib@Sun.COM /* getnetbyname_r is in libsocket.so.1 */
111*11038SRao.Shoaib@Sun.COM #define	getnetbyname_r res_getnetbyname_r
112*11038SRao.Shoaib@Sun.COM struct netent *getnetbyname_r __P((const char *, struct netent *, char *, int));
113*11038SRao.Shoaib@Sun.COM 
114*11038SRao.Shoaib@Sun.COM /* getnetent_r is in libsocket.so.1 */
115*11038SRao.Shoaib@Sun.COM #define	getnetent_r res_getnetent_r
116*11038SRao.Shoaib@Sun.COM struct netent *getnetent_r __P((struct netent *, char *, int));
117*11038SRao.Shoaib@Sun.COM 
118*11038SRao.Shoaib@Sun.COM /* getprotobyname is in libsocket.so.1 */
119*11038SRao.Shoaib@Sun.COM #define	getprotobyname res_getprotobyname
120*11038SRao.Shoaib@Sun.COM struct protoent	*getprotobyname __P((const char *));
121*11038SRao.Shoaib@Sun.COM 
122*11038SRao.Shoaib@Sun.COM /* getprotobyname_r is in libsocket.so.1 */
123*11038SRao.Shoaib@Sun.COM #define	getprotobyname_r res_getprotobyname_r
124*11038SRao.Shoaib@Sun.COM struct protoent	*getprotobyname_r __P((const char *, struct protoent *,
125*11038SRao.Shoaib@Sun.COM 				char *, int));
126*11038SRao.Shoaib@Sun.COM 
127*11038SRao.Shoaib@Sun.COM /* getprotobynumber is in libsocket.so.1 */
128*11038SRao.Shoaib@Sun.COM #define	getprotobynumber res_getprotobynumber
129*11038SRao.Shoaib@Sun.COM struct protoent	*getprotobynumber __P((int));
130*11038SRao.Shoaib@Sun.COM 
131*11038SRao.Shoaib@Sun.COM /* getprotobynumber_r is in libsocket.so.1 */
132*11038SRao.Shoaib@Sun.COM #define	getprotobynumber_r res_getprotobynumber_r
133*11038SRao.Shoaib@Sun.COM struct protoent	*getprotobynumber_r __P((int,
134*11038SRao.Shoaib@Sun.COM 				struct protoent *, char *, int));
135*11038SRao.Shoaib@Sun.COM 
136*11038SRao.Shoaib@Sun.COM /* getprotoent is in libsocket.so.1 */
137*11038SRao.Shoaib@Sun.COM #define	getprotoent res_getprotoent
138*11038SRao.Shoaib@Sun.COM struct protoent	*getprotoent __P((void));
139*11038SRao.Shoaib@Sun.COM 
140*11038SRao.Shoaib@Sun.COM /* getprotoent_r is in libsocket.so.1 */
141*11038SRao.Shoaib@Sun.COM #define	getprotoent_r res_getprotoent_r
142*11038SRao.Shoaib@Sun.COM struct protoent	*getprotoent_r __P((struct protoent *, char *, int));
143*11038SRao.Shoaib@Sun.COM 
144*11038SRao.Shoaib@Sun.COM /* getservbyname is in libsocket.so.1 and libnsl.so.1 */
145*11038SRao.Shoaib@Sun.COM #define	getservbyname res_getservbyname
146*11038SRao.Shoaib@Sun.COM struct servent *getservbyname __P((const char *, const char *));
147*11038SRao.Shoaib@Sun.COM 
148*11038SRao.Shoaib@Sun.COM /* getservbyname_r is in libsocket.so.1 and libnsl.so.1 */
149*11038SRao.Shoaib@Sun.COM #define	getservbyname_r res_getservbyname_r
150*11038SRao.Shoaib@Sun.COM struct servent *getservbyname_r __P((const char *name, const char *,
151*11038SRao.Shoaib@Sun.COM 				struct servent *, char *, int));
152*11038SRao.Shoaib@Sun.COM 
153*11038SRao.Shoaib@Sun.COM /* getservbyport is in libsocket.so.1 and libnsl.so.1 */
154*11038SRao.Shoaib@Sun.COM #define	getservbyport res_getservbyport
155*11038SRao.Shoaib@Sun.COM struct servent *getservbyport __P((int, const char *));
156*11038SRao.Shoaib@Sun.COM 
157*11038SRao.Shoaib@Sun.COM /* getservbyport_r is in libsocket.so.1 and libnsl.so.1 */
158*11038SRao.Shoaib@Sun.COM #define	getservbyport_r res_getservbyport_r
159*11038SRao.Shoaib@Sun.COM struct servent *getservbyport_r __P((int port, const char *,
160*11038SRao.Shoaib@Sun.COM 				struct servent *, char *, int));
161*11038SRao.Shoaib@Sun.COM 
162*11038SRao.Shoaib@Sun.COM /* getservent is in libsocket.so.1 */
163*11038SRao.Shoaib@Sun.COM #define	getservent res_getservent
164*11038SRao.Shoaib@Sun.COM struct servent *getservent __P((void));
165*11038SRao.Shoaib@Sun.COM 
166*11038SRao.Shoaib@Sun.COM /* getservent_r is in libsocket.so.1 */
167*11038SRao.Shoaib@Sun.COM #define	getservent_r res_getservent_r
168*11038SRao.Shoaib@Sun.COM struct servent *getservent_r __P((struct servent *, char *, int));
169*11038SRao.Shoaib@Sun.COM 
170*11038SRao.Shoaib@Sun.COM /* innetgr is in libsocket.so.1 */
171*11038SRao.Shoaib@Sun.COM #define	innetgr res_innetgr
172*11038SRao.Shoaib@Sun.COM int innetgr __P((const char *, const char *, const char *, const char *));
173*11038SRao.Shoaib@Sun.COM 
174*11038SRao.Shoaib@Sun.COM /* setprotoent is in libsocket.so.1 */
175*11038SRao.Shoaib@Sun.COM #define	setprotoent res_setprotoent
176*11038SRao.Shoaib@Sun.COM void setprotoent __P((int));
177*11038SRao.Shoaib@Sun.COM 
178*11038SRao.Shoaib@Sun.COM /* setservent is in libsocket.so.1 */
179*11038SRao.Shoaib@Sun.COM #define	setservent res_setservent
180*11038SRao.Shoaib@Sun.COM void setservent __P((int));
181*11038SRao.Shoaib@Sun.COM 
182*11038SRao.Shoaib@Sun.COM 
183*11038SRao.Shoaib@Sun.COM 
184*11038SRao.Shoaib@Sun.COM #ifdef	__cplusplus
185*11038SRao.Shoaib@Sun.COM }
186*11038SRao.Shoaib@Sun.COM #endif
187*11038SRao.Shoaib@Sun.COM 
188*11038SRao.Shoaib@Sun.COM #endif /* _PORT_NETDB_H */
189