diff options
Diffstat (limited to 'gcc/ada/s-oscons-tmplt.c')
-rw-r--r-- | gcc/ada/s-oscons-tmplt.c | 270 |
1 files changed, 270 insertions, 0 deletions
diff --git a/gcc/ada/s-oscons-tmplt.c b/gcc/ada/s-oscons-tmplt.c index 4d22450..448155b 100644 --- a/gcc/ada/s-oscons-tmplt.c +++ b/gcc/ada/s-oscons-tmplt.c @@ -1056,6 +1056,138 @@ CND(AF_INET, "IPv4 address family") #endif CND(AF_INET6, "IPv6 address family") +#ifndef AF_UNSPEC +# define AF_UNSPEC -1 +#else +# define HAVE_AF_UNSPEC 1 +#endif +CND(AF_UNSPEC, "Unspecified address family") + +/* + + ----------------------------- + -- addrinfo fields offsets -- + ----------------------------- + +*/ + +#ifdef AI_CANONNAME + const struct addrinfo ai; + +#define AI_FLAGS_OFFSET ((void *)&ai.ai_flags - (void *)&ai) +#define AI_FAMILY_OFFSET ((void *)&ai.ai_family - (void *)&ai) +#define AI_SOCKTYPE_OFFSET ((void *)&ai.ai_socktype - (void *)&ai) +#define AI_PROTOCOL_OFFSET ((void *)&ai.ai_protocol - (void *)&ai) +#define AI_ADDRLEN_OFFSET ((void *)&ai.ai_addrlen - (void *)&ai) +#define AI_ADDR_OFFSET ((void *)&ai.ai_addr - (void *)&ai) +#define AI_CANONNAME_OFFSET ((void *)&ai.ai_canonname - (void *)&ai) +#define AI_NEXT_OFFSET ((void *)&ai.ai_next - (void *)&ai) + +#else + +#define AI_FLAGS_OFFSET 0 +#define AI_FAMILY_OFFSET 4 +#define AI_SOCKTYPE_OFFSET 8 +#define AI_PROTOCOL_OFFSET 12 +#define AI_ADDRLEN_OFFSET 16 +#define AI_CANONNAME_OFFSET 24 +#define AI_ADDR_OFFSET 32 +#define AI_NEXT_OFFSET 40 + +#endif + +CND(AI_FLAGS_OFFSET, "Offset of ai_flags in addrinfo"); +CND(AI_FAMILY_OFFSET, "Offset of ai_family in addrinfo"); +CND(AI_SOCKTYPE_OFFSET, "Offset of ai_socktype in addrinfo"); +CND(AI_PROTOCOL_OFFSET, "Offset of ai_protocol in addrinfo"); +CND(AI_ADDRLEN_OFFSET, "Offset of ai_addrlen in addrinfo"); +CND(AI_ADDR_OFFSET, "Offset of ai_addr in addrinfo"); +CND(AI_CANONNAME_OFFSET, "Offset of ai_canonname in addrinfo"); +CND(AI_NEXT_OFFSET, "Offset of ai_next in addrinfo"); + +/* + + --------------------------------------- + -- getaddrinfo getnameinfo constants -- + --------------------------------------- + +*/ + +#ifndef AI_PASSIVE +# define AI_PASSIVE -1 +#endif +CND(AI_PASSIVE, "NULL nodename for accepting") + +#ifndef AI_CANONNAME +# define AI_CANONNAME -1 +#endif +CND(AI_CANONNAME, "Get the host official name") + +#ifndef AI_NUMERICSERV +# define AI_NUMERICSERV -1 +#endif +CND(AI_NUMERICSERV, "Service is a numeric string") + +#ifndef AI_NUMERICHOST +# define AI_NUMERICHOST -1 +#endif +CND(AI_NUMERICHOST, "Node is a numeric IP address") + +#ifndef AI_ADDRCONFIG +# define AI_ADDRCONFIG -1 +#endif +CND(AI_ADDRCONFIG, "Returns addresses for only locally configured families") + +#ifndef AI_V4MAPPED +# define AI_V4MAPPED -1 +#endif +CND(AI_V4MAPPED, "Returns IPv4 mapped to IPv6") + +#ifndef AI_ALL +# define AI_ALL -1 +#endif +CND(AI_ALL, "Change AI_V4MAPPED behavior for unavailavle IPv6 addresses") + +#ifndef NI_NAMEREQD +# define NI_NAMEREQD -1 +#endif +CND(NI_NAMEREQD, "Error if the hostname cannot be determined") + +#ifndef NI_DGRAM +# define NI_DGRAM -1 +#endif +CND(NI_DGRAM, "Service is datagram") + +#ifndef NI_NOFQDN +# define NI_NOFQDN -1 +#endif +CND(NI_NOFQDN, "Return only the hostname part for local hosts") + +#ifndef NI_NUMERICSERV +# define NI_NUMERICSERV -1 +#endif +CND(NI_NUMERICSERV, "Numeric form of the service") + +#ifndef NI_NUMERICHOST +# define NI_NUMERICHOST -1 +#endif +CND(NI_NUMERICHOST, "Numeric form of the hostname") + +#ifndef NI_MAXHOST +# define NI_MAXHOST -1 +#endif +CND(NI_MAXHOST, "Maximum size of hostname") + +#ifndef NI_MAXSERV +# define NI_MAXSERV -1 +#endif +CND(NI_MAXSERV, "Maximum size of service name") + +#ifndef EAI_SYSTEM +# define EAI_SYSTEM -1 +#endif +CND(EAI_SYSTEM, "Check errno for details") + /* ------------------ @@ -1074,6 +1206,11 @@ CND(SOCK_STREAM, "Stream socket") #endif CND(SOCK_DGRAM, "Datagram socket") +#ifndef SOCK_RAW +# define SOCK_RAW -1 +#endif +CND(SOCK_RAW, "Raw socket") + /* ----------------- @@ -1143,6 +1280,11 @@ CND(SOL_SOCKET, "Options for socket level") #endif CND(IPPROTO_IP, "Dummy protocol for IP") +#ifndef IPPROTO_IPV6 +# define IPPROTO_IPV6 -1 +#endif +CND(IPPROTO_IPV6, "IPv6 socket option level") + #ifndef IPPROTO_UDP # define IPPROTO_UDP -1 #endif @@ -1300,6 +1442,111 @@ CND(IP_DROP_MEMBERSHIP, "Leave a multicast group") #endif CND(IP_PKTINFO, "Get datagram info") +#ifndef IP_RECVERR +# define IP_RECVERR -1 +#endif +CND(IP_RECVERR, "Extended reliable error message passing") + +#ifndef IPV6_ADDRFORM +# define IPV6_ADDRFORM -1 +#endif +CND(IPV6_ADDRFORM, "Turn IPv6 socket into different address family") + +#ifndef IPV6_ADD_MEMBERSHIP +# define IPV6_ADD_MEMBERSHIP -1 +#endif +CND(IPV6_ADD_MEMBERSHIP, "Join IPv6 multicast group") + +#ifndef IPV6_DROP_MEMBERSHIP +# define IPV6_DROP_MEMBERSHIP -1 +#endif +CND(IPV6_DROP_MEMBERSHIP, "Leave IPv6 multicast group") + +#ifndef IPV6_MTU +# define IPV6_MTU -1 +#endif +CND(IPV6_MTU, "Set/get MTU used for the socket") + +#ifndef IPV6_MTU_DISCOVER +# define IPV6_MTU_DISCOVER -1 +#endif +CND(IPV6_MTU_DISCOVER, "Control path-MTU discovery on the socket") + +#ifndef IPV6_MULTICAST_HOPS +# define IPV6_MULTICAST_HOPS -1 +#endif +CND(IPV6_MULTICAST_HOPS, "Set the multicast hop limit for the socket") + +#ifndef IPV6_MULTICAST_IF +# define IPV6_MULTICAST_IF -1 +#endif +CND(IPV6_MULTICAST_IF, "Set/get IPv6 mcast interface") + +#ifndef IPV6_MULTICAST_LOOP +# define IPV6_MULTICAST_LOOP -1 +#endif +CND(IPV6_MULTICAST_LOOP, "Set/get mcast loopback") + +#ifndef IPV6_RECVPKTINFO +# define IPV6_RECVPKTINFO -1 +#endif +CND(IPV6_RECVPKTINFO, "Set delivery of the IPV6_PKTINFO") + +#ifndef IPV6_PKTINFO +# define IPV6_PKTINFO -1 +#endif +CND(IPV6_PKTINFO, "Get IPv6datagram info") + +#ifndef IPV6_RTHDR +# define IPV6_RTHDR -1 +#endif +CND(IPV6_RTHDR, "Set the routing header delivery") + +#ifndef IPV6_AUTHHDR +# define IPV6_AUTHHDR -1 +#endif +CND(IPV6_AUTHHDR, "Set the authentication header delivery") + +#ifndef IPV6_DSTOPTS +# define IPV6_DSTOPTS -1 +#endif +CND(IPV6_DSTOPTS, "Set the destination options delivery") + +#ifndef IPV6_HOPOPTS +# define IPV6_HOPOPTS -1 +#endif +CND(IPV6_HOPOPTS, "Set the hop options delivery") + +#ifndef IPV6_FLOWINFO +# define IPV6_FLOWINFO -1 +#endif +CND(IPV6_FLOWINFO, "Set the flow ID delivery") + +#ifndef IPV6_HOPLIMIT +# define IPV6_HOPLIMIT -1 +#endif +CND(IPV6_HOPLIMIT, "Set the hop count of the packet delivery") + +#ifndef IPV6_RECVERR +# define IPV6_RECVERR -1 +#endif +CND(IPV6_RECVERR, "Extended reliable error message passing") + +#ifndef IPV6_ROUTER_ALERT +# define IPV6_ROUTER_ALERT -1 +#endif +CND(IPV6_ROUTER_ALERT, "Pass forwarded router alert hop-by-hop option") + +#ifndef IPV6_UNICAST_HOPS +# define IPV6_UNICAST_HOPS -1 +#endif +CND(IPV6_UNICAST_HOPS, "Set the unicast hop limit") + +#ifndef IPV6_V6ONLY +# define IPV6_V6ONLY -1 +#endif +CND(IPV6_V6ONLY, "Restricted to IPv6 communications only") + /* ---------------------- @@ -1367,6 +1614,22 @@ CND(SIZEOF_struct_servent, "struct servent") CND(SIZEOF_sigset, "sigset") #endif +#if defined(_WIN32) || defined(__vxworks) +#define SIZEOF_socklen_t sizeof (size_t) +#else +#define SIZEOF_socklen_t sizeof (socklen_t) +#endif +CND(SIZEOF_socklen_t, "Size of socklen_t"); + +#ifndef IF_NAMESIZE +#ifdef IF_MAX_STRING_SIZE +#define IF_NAMESIZE IF_MAX_STRING_SIZE +#else +#define IF_NAMESIZE -1 +#endif +#endif +CND(IF_NAMESIZE, "Max size of interface name with 0 terminator"); + /* -- Fields of struct msghdr @@ -1409,6 +1672,13 @@ C("Thread_Blocking_IO", Boolean, "True", "") #endif CST(Inet_Pton_Linkname, "") +#ifdef HAVE_INET_NTOP +# define Inet_Ntop_Linkname "inet_ntop" +#else +# define Inet_Ntop_Linkname "__gnat_inet_ntop" +#endif +CST(Inet_Ntop_Linkname, "") + #endif /* HAVE_SOCKETS */ /* |