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