icmpv6.h revision 11cd02dfb91661c65134cac258cf5924270e9d2
111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/**************************************************************************** 211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** This header was automatically generated from a Linux kernel header 511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** of the same name, to make information necessary for userspace to 611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** call into the kernel available to libc. It contains only constants, 711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** structures, and macros generated from the original header, and thus, 811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** contains no copyrightable information. 911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** To edit the content of this header, modify the corresponding 1111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** source file (e.g. under external/kernel-headers/original/) then 1211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** run bionic/libc/kernel/tools/update_all.py 1311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** Any manual change here will be lost the next time this script will 1511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** be run. You've been warned! 1611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 1811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************/ 1911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef _UAPI_LINUX_ICMPV6_H 2011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _UAPI_LINUX_ICMPV6_H 2111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/types.h> 2211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <asm/byteorder.h> 2311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 2411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct icmp6hdr { 2511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 icmp6_type; 2611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 icmp6_code; 2711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __sum16 icmp6_cksum; 2811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 2911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert union { 3011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __be32 un_data32[1]; 3111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __be16 un_data16[2]; 3211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 un_data8[4]; 3311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 3411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct icmpv6_echo { 3511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __be16 identifier; 3611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __be16 sequence; 3711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } u_echo; 3811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 3911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct icmpv6_nd_advt { 4011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifdef __LITTLE_ENDIAN_BITFIELD 4111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 reserved:5, 4211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert override:1, 4311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 4411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert solicited:1, 4511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert router:1, 4611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert reserved2:24; 4711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#elif defined(__BIG_ENDIAN_BITFIELD) 4811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 4911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 router:1, 5011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert solicited:1, 5111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert override:1, 5211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert reserved:29; 5311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 5411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#else 5511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#error "Please fix <asm/byteorder.h>" 5611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 5711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } u_nd_advt; 5811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 5911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct icmpv6_nd_ra { 6011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 hop_limit; 6111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifdef __LITTLE_ENDIAN_BITFIELD 6211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 reserved:3, 6311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 6411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert router_pref:2, 6511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert home_agent:1, 6611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert other:1, 6711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert managed:1; 6811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 6911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#elif defined(__BIG_ENDIAN_BITFIELD) 7011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u8 managed:1, 7111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert other:1, 7211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert home_agent:1, 7311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 7411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert router_pref:2, 7511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert reserved:3; 7611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#else 7711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#error "Please fix <asm/byteorder.h>" 7811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 7911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 8011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __be16 rt_lifetime; 8111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } u_nd_ra; 8211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } icmp6_dataun; 8311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 8411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_identifier icmp6_dataun.u_echo.identifier 8511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_sequence icmp6_dataun.u_echo.sequence 8611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_pointer icmp6_dataun.un_data32[0] 8711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_mtu icmp6_dataun.un_data32[0] 8811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 8911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_unused icmp6_dataun.un_data32[0] 9011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_maxdelay icmp6_dataun.un_data16[0] 9111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_router icmp6_dataun.u_nd_advt.router 9211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_solicited icmp6_dataun.u_nd_advt.solicited 9311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 9411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_override icmp6_dataun.u_nd_advt.override 9511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_ndiscreserved icmp6_dataun.u_nd_advt.reserved 9611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_hop_limit icmp6_dataun.u_nd_ra.hop_limit 9711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_addrconf_managed icmp6_dataun.u_nd_ra.managed 9811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 9911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_addrconf_other icmp6_dataun.u_nd_ra.other 10011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_rt_lifetime icmp6_dataun.u_nd_ra.rt_lifetime 10111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define icmp6_router_pref icmp6_dataun.u_nd_ra.router_pref 10211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 10311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 10411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_ROUTER_PREF_LOW 0x3 10511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_ROUTER_PREF_MEDIUM 0x0 10611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_ROUTER_PREF_HIGH 0x1 10711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_ROUTER_PREF_INVALID 0x2 10811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 10911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_DEST_UNREACH 1 11011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_PKT_TOOBIG 2 11111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_TIME_EXCEED 3 11211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_PARAMPROB 4 11311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 11411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_INFOMSG_MASK 0x80 11511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_ECHO_REQUEST 128 11611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_ECHO_REPLY 129 11711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_MGM_QUERY 130 11811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 11911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_MGM_REPORT 131 12011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_MGM_REDUCTION 132 12111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_NI_QUERY 139 12211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_NI_REPLY 140 12311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 12411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_MLD2_REPORT 143 12511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_DHAAD_REQUEST 144 12611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_DHAAD_REPLY 145 12711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_MOBILE_PREFIX_SOL 146 12811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 12911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_MOBILE_PREFIX_ADV 147 13011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_NOROUTE 0 13111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_ADM_PROHIBITED 1 13211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_NOT_NEIGHBOUR 2 13311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 13411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_ADDR_UNREACH 3 13511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_PORT_UNREACH 4 13611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_POLICY_FAIL 5 13711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_REJECT_ROUTE 6 13811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 13911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_EXC_HOPLIMIT 0 14011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_EXC_FRAGTIME 1 14111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_HDR_FIELD 0 14211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_UNK_NEXTHDR 1 14311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 14411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_UNK_OPTION 2 14511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_FILTER 1 14611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_FILTER_BLOCK 1 14711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_FILTER_PASS 2 14811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 14911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_FILTER_BLOCKOTHERS 3 15011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ICMPV6_FILTER_PASSONLY 4 15111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct icmp6_filter { 15211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __u32 data[8]; 15311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 15411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 15511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MLD2_MODE_IS_INCLUDE 1 15611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MLD2_MODE_IS_EXCLUDE 2 15711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MLD2_CHANGE_TO_INCLUDE 3 15811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 15911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MLD2_CHANGE_TO_EXCLUDE 4 16011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MLD2_ALLOW_NEW_SOURCES 5 16111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MLD2_BLOCK_OLD_SOURCES 6 16211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MLD2_ALL_MCR_INIT { { { 0xff,0x02,0,0,0,0,0,0,0,0,0,0,0,0,0,0x16 } } } 16311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 16411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 165