1 #ifndef _FAKE_GETADDRINFO_H
2 #define _FAKE_GETADDRINFO_H
4 #include "fake-gai-errnos.h"
8 # define AI_CANONNAME 2
11 #ifndef NI_NUMERICHOST
12 # define NI_NUMERICHOST 2
13 # define NI_NAMEREQD 4
14 # define NI_NUMERICSERV 8
17 #ifndef AI_NUMERICHOST
18 #define AI_NUMERICHOST 4
21 #ifndef HAVE_STRUCT_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 */
32 #endif /* !HAVE_STRUCT_ADDRINFO */
34 #if !HAVE_DECL_GETADDRINFO
35 int getaddrinfo(const char *hostname, const char *servname,
36 const struct addrinfo *hints, struct addrinfo **res);
37 #endif /* !HAVE_GETADDRINFO */
39 #if !HAVE_DECL_GAI_STRERROR
40 char *gai_strerror(int ecode);
41 #endif /* !HAVE_GAI_STRERROR */
43 #if !HAVE_DECL_FREEADDRINFO
44 void freeaddrinfo(struct addrinfo *ai);
45 #endif /* !HAVE_FREEADDRINFO */
47 #endif /* _FAKE_GETADDRINFO_H */