blob: afd0226e2af46bef5c5f5f7cf48b25fd9cc5ab3d [file] [log] [blame]
Damien Millere9cf3572001-02-09 12:55:35 +11001/* $Id: fake-getaddrinfo.h,v 1.2 2001/02/09 01:55:36 djm Exp $ */
2
Damien Miller34132e52000-01-14 15:45:46 +11003#ifndef _FAKE_GETADDRINFO_H
4#define _FAKE_GETADDRINFO_H
5
6#include "config.h"
7
8#include "fake-gai-errnos.h"
9
10#ifndef AI_PASSIVE
11# define AI_PASSIVE 1
Damien Miller8f926492000-01-16 18:19:25 +110012# define AI_CANONNAME 2
Damien Miller34132e52000-01-14 15:45:46 +110013#endif
14
15#ifndef NI_NUMERICHOST
16# define NI_NUMERICHOST 2
17# define NI_NAMEREQD 4
18# define NI_NUMERICSERV 8
19#endif
20
21#ifndef HAVE_STRUCT_ADDRINFO
22struct addrinfo {
23 int ai_flags; /* AI_PASSIVE, AI_CANONNAME */
24 int ai_family; /* PF_xxx */
25 int ai_socktype; /* SOCK_xxx */
26 int ai_protocol; /* 0 or IPPROTO_xxx for IPv4 and IPv6 */
27 size_t ai_addrlen; /* length of ai_addr */
28 char *ai_canonname; /* canonical name for hostname */
29 struct sockaddr *ai_addr; /* binary address */
30 struct addrinfo *ai_next; /* next structure in linked list */
Damien Miller8f926492000-01-16 18:19:25 +110031};
Damien Miller34132e52000-01-14 15:45:46 +110032#endif /* !HAVE_STRUCT_ADDRINFO */
33
34#ifndef HAVE_GETADDRINFO
35int getaddrinfo(const char *hostname, const char *servname,
36 const struct addrinfo *hints, struct addrinfo **res);
37#endif /* !HAVE_GETADDRINFO */
38
39#ifndef HAVE_GAI_STRERROR
40char *gai_strerror(int ecode);
41#endif /* !HAVE_GAI_STRERROR */
42
43#ifndef HAVE_FREEADDRINFO
44void freeaddrinfo(struct addrinfo *ai);
45#endif /* !HAVE_FREEADDRINFO */
46
47#endif /* _FAKE_GETADDRINFO_H */