1951a39d68df598db08dfced8b4707755864a0492Ying Wang/**************************************************************************** 2951a39d68df598db08dfced8b4707755864a0492Ying Wang **************************************************************************** 3951a39d68df598db08dfced8b4707755864a0492Ying Wang *** 4951a39d68df598db08dfced8b4707755864a0492Ying Wang *** This header was automatically generated from a Linux kernel header 5951a39d68df598db08dfced8b4707755864a0492Ying Wang *** of the same name, to make information necessary for userspace to 6951a39d68df598db08dfced8b4707755864a0492Ying Wang *** call into the kernel available to libc. It contains only constants, 7951a39d68df598db08dfced8b4707755864a0492Ying Wang *** structures, and macros generated from the original header, and thus, 8951a39d68df598db08dfced8b4707755864a0492Ying Wang *** contains no copyrightable information. 9951a39d68df598db08dfced8b4707755864a0492Ying Wang *** 10951a39d68df598db08dfced8b4707755864a0492Ying Wang **************************************************************************** 11951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************/ 12951a39d68df598db08dfced8b4707755864a0492Ying Wang#ifndef _LINUX_IN6_H 13951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _LINUX_IN6_H 14951a39d68df598db08dfced8b4707755864a0492Ying Wang 15951a39d68df598db08dfced8b4707755864a0492Ying Wang#include <linux/types.h> 16951a39d68df598db08dfced8b4707755864a0492Ying Wang 17951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct in6_addr 18951a39d68df598db08dfced8b4707755864a0492Ying Wang{ 19951a39d68df598db08dfced8b4707755864a0492Ying Wang union 20951a39d68df598db08dfced8b4707755864a0492Ying Wang { 21951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 u6_addr8[16]; 22951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 u6_addr16[8]; 23951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 u6_addr32[4]; 24951a39d68df598db08dfced8b4707755864a0492Ying Wang } in6_u; 25951a39d68df598db08dfced8b4707755864a0492Ying Wang#define s6_addr in6_u.u6_addr8 26951a39d68df598db08dfced8b4707755864a0492Ying Wang#define s6_addr16 in6_u.u6_addr16 27951a39d68df598db08dfced8b4707755864a0492Ying Wang#define s6_addr32 in6_u.u6_addr32 28951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 29951a39d68df598db08dfced8b4707755864a0492Ying Wang 30951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IN6ADDR_LOOPBACK_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } } } 31951a39d68df598db08dfced8b4707755864a0492Ying Wang 32951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct sockaddr_in6 { 33951a39d68df598db08dfced8b4707755864a0492Ying Wang unsigned short int sin6_family; 34951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 sin6_port; 35951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 sin6_flowinfo; 36951a39d68df598db08dfced8b4707755864a0492Ying Wang struct in6_addr sin6_addr; 37951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 sin6_scope_id; 38951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 39951a39d68df598db08dfced8b4707755864a0492Ying Wang 40951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct ipv6_mreq { 41951a39d68df598db08dfced8b4707755864a0492Ying Wang 42951a39d68df598db08dfced8b4707755864a0492Ying Wang struct in6_addr ipv6mr_multiaddr; 43951a39d68df598db08dfced8b4707755864a0492Ying Wang 44951a39d68df598db08dfced8b4707755864a0492Ying Wang int ipv6mr_ifindex; 45951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 46951a39d68df598db08dfced8b4707755864a0492Ying Wang 47951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ipv6mr_acaddr ipv6mr_multiaddr 48951a39d68df598db08dfced8b4707755864a0492Ying Wang 49951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct in6_flowlabel_req 50951a39d68df598db08dfced8b4707755864a0492Ying Wang{ 51951a39d68df598db08dfced8b4707755864a0492Ying Wang struct in6_addr flr_dst; 52951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 flr_label; 53951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 flr_action; 54951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 flr_share; 55951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 flr_flags; 56951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 flr_expires; 57951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 flr_linger; 58951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 __flr_pad; 59951a39d68df598db08dfced8b4707755864a0492Ying Wang 60951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 61951a39d68df598db08dfced8b4707755864a0492Ying Wang 62951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FL_A_GET 0 63951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FL_A_PUT 1 64951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FL_A_RENEW 2 65951a39d68df598db08dfced8b4707755864a0492Ying Wang 66951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FL_F_CREATE 1 67951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FL_F_EXCL 2 68951a39d68df598db08dfced8b4707755864a0492Ying Wang 69951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FL_S_NONE 0 70951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FL_S_EXCL 1 71951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FL_S_PROCESS 2 72951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FL_S_USER 3 73951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FL_S_ANY 255 74951a39d68df598db08dfced8b4707755864a0492Ying Wang 75951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FLOWINFO_FLOWLABEL 0x000fffff 76951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FLOWINFO_PRIORITY 0x0ff00000 77951a39d68df598db08dfced8b4707755864a0492Ying Wang 78951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_UNCHARACTERIZED 0x0000 79951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_FILLER 0x0100 80951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_UNATTENDED 0x0200 81951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_RESERVED1 0x0300 82951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_BULK 0x0400 83951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_RESERVED2 0x0500 84951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_INTERACTIVE 0x0600 85951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_CONTROL 0x0700 86951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_8 0x0800 87951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_9 0x0900 88951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_10 0x0a00 89951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_11 0x0b00 90951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_12 0x0c00 91951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_13 0x0d00 92951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_14 0x0e00 93951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PRIORITY_15 0x0f00 94951a39d68df598db08dfced8b4707755864a0492Ying Wang 95951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPPROTO_HOPOPTS 0 96951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPPROTO_ROUTING 43 97951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPPROTO_FRAGMENT 44 98951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPPROTO_ICMPV6 58 99951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPPROTO_NONE 59 100951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPPROTO_DSTOPTS 60 101951a39d68df598db08dfced8b4707755864a0492Ying Wang 102951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_TLV_PAD0 0 103951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_TLV_PADN 1 104951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_TLV_ROUTERALERT 5 105951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_TLV_JUMBO 194 106951a39d68df598db08dfced8b4707755864a0492Ying Wang 107951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_ADDRFORM 1 108951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_2292PKTINFO 2 109951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_2292HOPOPTS 3 110951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_2292DSTOPTS 4 111951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_2292RTHDR 5 112951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_2292PKTOPTIONS 6 113951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_CHECKSUM 7 114951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_2292HOPLIMIT 8 115951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_NEXTHOP 9 116951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_AUTHHDR 10 117951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FLOWINFO 11 118951a39d68df598db08dfced8b4707755864a0492Ying Wang 119951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_UNICAST_HOPS 16 120951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_MULTICAST_IF 17 121951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_MULTICAST_HOPS 18 122951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_MULTICAST_LOOP 19 123951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_ADD_MEMBERSHIP 20 124951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_DROP_MEMBERSHIP 21 125951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_ROUTER_ALERT 22 126951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_MTU_DISCOVER 23 127951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_MTU 24 128951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_RECVERR 25 129951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_V6ONLY 26 130951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_JOIN_ANYCAST 27 131951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_LEAVE_ANYCAST 28 132951a39d68df598db08dfced8b4707755864a0492Ying Wang 133951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PMTUDISC_DONT 0 134951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PMTUDISC_WANT 1 135951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PMTUDISC_DO 2 136951a39d68df598db08dfced8b4707755864a0492Ying Wang 137951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FLOWLABEL_MGR 32 138951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_FLOWINFO_SEND 33 139951a39d68df598db08dfced8b4707755864a0492Ying Wang 140951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_IPSEC_POLICY 34 141951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_XFRM_POLICY 35 142951a39d68df598db08dfced8b4707755864a0492Ying Wang 143951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_RECVPKTINFO 49 144951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_PKTINFO 50 145951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_RECVHOPLIMIT 51 146951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_HOPLIMIT 52 147951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_RECVHOPOPTS 53 148951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_HOPOPTS 54 149951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_RTHDRDSTOPTS 55 150951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_RECVRTHDR 56 151951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_RTHDR 57 152951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_RECVDSTOPTS 58 153951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_DSTOPTS 59 154951a39d68df598db08dfced8b4707755864a0492Ying Wang 155951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_RECVTCLASS 66 156951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IPV6_TCLASS 67 157951a39d68df598db08dfced8b4707755864a0492Ying Wang 158951a39d68df598db08dfced8b4707755864a0492Ying Wang#endif 159