1 /*
2  * Mar  8, 2000 by Hajimu UMEMOTO <ume@mahoroba.org>
3  * $Id: gai.h 125 2005-08-27 16:33:10Z ume $
4  *
5  * This module is besed on ssh-1.2.27-IPv6-1.5 written by
6  * KIKUCHI Takahiro <kick@kyoto.wide.ad.jp>
7  */
8 /*
9  * fake library for ssh
10  *
11  * This file is included in getaddrinfo.c and getnameinfo.c.
12  * See getaddrinfo.c and getnameinfo.c.
13  */
14 
15 #ifndef _GAI_H_
16 #define _GAI_H_
17 
18 /* for old netdb.h */
19 #ifndef EAI_SERVICE
20 #define EAI_MEMORY	2
21 #define EAI_FAMILY	5	/* ai_family not supported */
22 #define EAI_NONAME	8	/* hostname nor servname provided, or not known */
23 #define EAI_SERVICE	9	/* servname not supported for ai_socktype */
24 #endif
25 
26 /* dummy value for old netdb.h */
27 #ifndef AI_PASSIVE
28 #define AI_PASSIVE	1
29 #define AI_CANONNAME	2
30 #define AI_NUMERICHOST	4
31 #define AI_NUMERICSERV	8
32 #define NI_NUMERICHOST	2
33 #define NI_NAMEREQD	4
34 #define NI_NUMERICSERV	8
35 struct addrinfo {
36 	int	ai_flags;	/* AI_PASSIVE, AI_CANONNAME */
37 	int	ai_family;	/* PF_xxx */
38 	int	ai_socktype;	/* SOCK_xxx */
39 	int	ai_protocol;	/* 0 or IPPROTO_xxx for IPv4 and IPv6 */
40 	size_t	ai_addrlen;	/* length of ai_addr */
41 	char	*ai_canonname;	/* canonical name for hostname */
42 	struct sockaddr *ai_addr;	/* binary address */
43 	struct addrinfo *ai_next;	/* next structure in linked list */
44 };
45 #endif
46 
47 #endif
48