1 /**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19 #ifndef _UAPI_LWTUNNEL_H_ 20 #define _UAPI_LWTUNNEL_H_ 21 #include <linux/types.h> 22 enum lwtunnel_encap_types { 23 LWTUNNEL_ENCAP_NONE, 24 LWTUNNEL_ENCAP_MPLS, 25 LWTUNNEL_ENCAP_IP, 26 LWTUNNEL_ENCAP_ILA, 27 LWTUNNEL_ENCAP_IP6, 28 LWTUNNEL_ENCAP_SEG6, 29 LWTUNNEL_ENCAP_BPF, 30 LWTUNNEL_ENCAP_SEG6_LOCAL, 31 LWTUNNEL_ENCAP_RPL, 32 LWTUNNEL_ENCAP_IOAM6, 33 LWTUNNEL_ENCAP_XFRM, 34 __LWTUNNEL_ENCAP_MAX, 35 }; 36 #define LWTUNNEL_ENCAP_MAX (__LWTUNNEL_ENCAP_MAX - 1) 37 enum lwtunnel_ip_t { 38 LWTUNNEL_IP_UNSPEC, 39 LWTUNNEL_IP_ID, 40 LWTUNNEL_IP_DST, 41 LWTUNNEL_IP_SRC, 42 LWTUNNEL_IP_TTL, 43 LWTUNNEL_IP_TOS, 44 LWTUNNEL_IP_FLAGS, 45 LWTUNNEL_IP_PAD, 46 LWTUNNEL_IP_OPTS, 47 __LWTUNNEL_IP_MAX, 48 }; 49 #define LWTUNNEL_IP_MAX (__LWTUNNEL_IP_MAX - 1) 50 enum lwtunnel_ip6_t { 51 LWTUNNEL_IP6_UNSPEC, 52 LWTUNNEL_IP6_ID, 53 LWTUNNEL_IP6_DST, 54 LWTUNNEL_IP6_SRC, 55 LWTUNNEL_IP6_HOPLIMIT, 56 LWTUNNEL_IP6_TC, 57 LWTUNNEL_IP6_FLAGS, 58 LWTUNNEL_IP6_PAD, 59 LWTUNNEL_IP6_OPTS, 60 __LWTUNNEL_IP6_MAX, 61 }; 62 #define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1) 63 enum { 64 LWTUNNEL_IP_OPTS_UNSPEC, 65 LWTUNNEL_IP_OPTS_GENEVE, 66 LWTUNNEL_IP_OPTS_VXLAN, 67 LWTUNNEL_IP_OPTS_ERSPAN, 68 __LWTUNNEL_IP_OPTS_MAX, 69 }; 70 #define LWTUNNEL_IP_OPTS_MAX (__LWTUNNEL_IP_OPTS_MAX - 1) 71 enum { 72 LWTUNNEL_IP_OPT_GENEVE_UNSPEC, 73 LWTUNNEL_IP_OPT_GENEVE_CLASS, 74 LWTUNNEL_IP_OPT_GENEVE_TYPE, 75 LWTUNNEL_IP_OPT_GENEVE_DATA, 76 __LWTUNNEL_IP_OPT_GENEVE_MAX, 77 }; 78 #define LWTUNNEL_IP_OPT_GENEVE_MAX (__LWTUNNEL_IP_OPT_GENEVE_MAX - 1) 79 enum { 80 LWTUNNEL_IP_OPT_VXLAN_UNSPEC, 81 LWTUNNEL_IP_OPT_VXLAN_GBP, 82 __LWTUNNEL_IP_OPT_VXLAN_MAX, 83 }; 84 #define LWTUNNEL_IP_OPT_VXLAN_MAX (__LWTUNNEL_IP_OPT_VXLAN_MAX - 1) 85 enum { 86 LWTUNNEL_IP_OPT_ERSPAN_UNSPEC, 87 LWTUNNEL_IP_OPT_ERSPAN_VER, 88 LWTUNNEL_IP_OPT_ERSPAN_INDEX, 89 LWTUNNEL_IP_OPT_ERSPAN_DIR, 90 LWTUNNEL_IP_OPT_ERSPAN_HWID, 91 __LWTUNNEL_IP_OPT_ERSPAN_MAX, 92 }; 93 #define LWTUNNEL_IP_OPT_ERSPAN_MAX (__LWTUNNEL_IP_OPT_ERSPAN_MAX - 1) 94 enum { 95 LWT_BPF_PROG_UNSPEC, 96 LWT_BPF_PROG_FD, 97 LWT_BPF_PROG_NAME, 98 __LWT_BPF_PROG_MAX, 99 }; 100 #define LWT_BPF_PROG_MAX (__LWT_BPF_PROG_MAX - 1) 101 enum { 102 LWT_BPF_UNSPEC, 103 LWT_BPF_IN, 104 LWT_BPF_OUT, 105 LWT_BPF_XMIT, 106 LWT_BPF_XMIT_HEADROOM, 107 __LWT_BPF_MAX, 108 }; 109 #define LWT_BPF_MAX (__LWT_BPF_MAX - 1) 110 #define LWT_BPF_MAX_HEADROOM 256 111 enum { 112 LWT_XFRM_UNSPEC, 113 LWT_XFRM_IF_ID, 114 LWT_XFRM_LINK, 115 __LWT_XFRM_MAX, 116 }; 117 #define LWT_XFRM_MAX (__LWT_XFRM_MAX - 1) 118 #endif 119