diff --git a/headers/posix/netinet/in.h b/headers/posix/netinet/in.h index 0e16b70f1f..9d050f1664 100644 --- a/headers/posix/netinet/in.h +++ b/headers/posix/netinet/in.h @@ -1,5 +1,5 @@ /* - * Copyright 2002-2009, Haiku, Inc. All Rights Reserved. + * Copyright 2002-2010, Haiku, Inc. All Rights Reserved. * Distributed under the terms of the MIT License. */ #ifndef _NETINET_IN_H_ @@ -139,10 +139,16 @@ struct group_source_req { #define MCAST_JOIN_SOURCE_GROUP 22 /* group_source_req */ #define MCAST_LEAVE_SOURCE_GROUP 23 /* group_source_req */ +/* IPPROTO_IPV6 options */ #define IPV6_MULTICAST_IF 24 /* int */ #define IPV6_MULTICAST_HOPS 25 /* int */ #define IPV6_MULTICAST_LOOP 26 /* int */ +#define IPV6_UNICAST_HOPS 27 /* int */ +#define IPV6_JOIN_GROUP 28 /* struct ipv6_mreq */ +#define IPV6_LEAVE_GROUP 29 /* struct ipv6_mreq */ +#define IPV6_V6ONLY 30 /* int */ + #define INADDR_ANY ((in_addr_t)0x00000000) #define INADDR_LOOPBACK ((in_addr_t)0x7f000001) #define INADDR_BROADCAST ((in_addr_t)0xffffffff) /* must be masked */ diff --git a/headers/posix/netinet6/in6.h b/headers/posix/netinet6/in6.h index b8db2dd316..a17beb13ed 100644 --- a/headers/posix/netinet6/in6.h +++ b/headers/posix/netinet6/in6.h @@ -36,6 +36,12 @@ extern const struct in6_addr in6addr_any; extern const struct in6_addr in6addr_loopback; +struct ipv6_mreq { + struct in6_addr ipv6mr_multiaddr; + unsigned ipv6mr_interface; +}; + + /* Non-standard helper defines (same as in FreeBSD, though) */ #define __IPV6_ADDR_SCOPE_NODELOCAL 0x01 #define __IPV6_ADDR_SCOPE_INTFACELOCAL 0x01