From 0e564a14198326d34f3bdf6573db9c466df7101a Mon Sep 17 00:00:00 2001 From: Erik van der Kouwe Date: Mon, 25 Jan 2010 18:13:23 +0000 Subject: [PATCH] Add IPv6-related header definitions --- include/netinet/in.h | 21 +++++++++++++++++++++ include/sys/socket.h | 13 +++++++++++++ 2 files changed, 34 insertions(+) diff --git a/include/netinet/in.h b/include/netinet/in.h index 7d4ee8044..bf6473db0 100644 --- a/include/netinet/in.h +++ b/include/netinet/in.h @@ -64,6 +64,27 @@ struct ip_mreq struct in_addr imr_interface; }; +/* + * IPv6 is not supportedn, but some programs need these declarations + * nevertheless; these declarations are based on + * http://www.opengroup.org/onlinepubs/000095399/basedefs/netinet/in.h.html + */ +struct in6_addr +{ + uint8_t s6_addr[16]; +}; + +struct sockaddr_in6 +{ + sa_family_t sin6_family; + in_port_t sin6_port; + uint32_t sin6_flowinfo; + struct in6_addr sin6_addr; + uint32_t sin6_scope_id; +}; + +#define INET6_ADDRSTRLEN 46 + /* Definitions that are not part of the Open Group Base Specifications */ #define IN_CLASSA(i) (((uint32_t)(i) & 0x80000000) == 0) #define IN_CLASSA_NET 0xff000000 diff --git a/include/sys/socket.h b/include/sys/socket.h index 35da6e434..85e16960d 100644 --- a/include/sys/socket.h +++ b/include/sys/socket.h @@ -87,4 +87,17 @@ _PROTOTYPE( int socket, (int _domain, int _type, int _protocol) ); #define PF_UNIX AF_UNIX #define PF_UNSPEC AF_UNSPEC +/* based on http://tools.ietf.org/html/rfc2553 */ +struct sockaddr_storage +{ + sa_family_t __ss_family; + char __ss_pad1[6]; +#ifdef __LONG_LONG_SUPPORTED + int64_t __ss_align; +#else + int32_t __ss_align[2]; +#endif + char __ss_pad2[112]; +}; + #endif /* SYS_SOCKET_H */ -- 2.44.0