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_MAX, 34 }; 35 #define LWTUNNEL_ENCAP_MAX (__LWTUNNEL_ENCAP_MAX - 1) 36 enum lwtunnel_ip_t { 37 LWTUNNEL_IP_UNSPEC, 38 LWTUNNEL_IP_ID, 39 LWTUNNEL_IP_DST, 40 LWTUNNEL_IP_SRC, 41 LWTUNNEL_IP_TTL, 42 LWTUNNEL_IP_TOS, 43 LWTUNNEL_IP_FLAGS, 44 LWTUNNEL_IP_PAD, 45 LWTUNNEL_IP_OPTS, 46 __LWTUNNEL_IP_MAX, 47 }; 48 #define LWTUNNEL_IP_MAX (__LWTUNNEL_IP_MAX - 1) 49 enum lwtunnel_ip6_t { 50 LWTUNNEL_IP6_UNSPEC, 51 LWTUNNEL_IP6_ID, 52 LWTUNNEL_IP6_DST, 53 LWTUNNEL_IP6_SRC, 54 LWTUNNEL_IP6_HOPLIMIT, 55 LWTUNNEL_IP6_TC, 56 LWTUNNEL_IP6_FLAGS, 57 LWTUNNEL_IP6_PAD, 58 LWTUNNEL_IP6_OPTS, 59 __LWTUNNEL_IP6_MAX, 60 }; 61 #define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1) 62 enum { 63 LWTUNNEL_IP_OPTS_UNSPEC, 64 LWTUNNEL_IP_OPTS_GENEVE, 65 LWTUNNEL_IP_OPTS_VXLAN, 66 LWTUNNEL_IP_OPTS_ERSPAN, 67 __LWTUNNEL_IP_OPTS_MAX, 68 }; 69 #define LWTUNNEL_IP_OPTS_MAX (__LWTUNNEL_IP_OPTS_MAX - 1) 70 enum { 71 LWTUNNEL_IP_OPT_GENEVE_UNSPEC, 72 LWTUNNEL_IP_OPT_GENEVE_CLASS, 73 LWTUNNEL_IP_OPT_GENEVE_TYPE, 74 LWTUNNEL_IP_OPT_GENEVE_DATA, 75 __LWTUNNEL_IP_OPT_GENEVE_MAX, 76 }; 77 #define LWTUNNEL_IP_OPT_GENEVE_MAX (__LWTUNNEL_IP_OPT_GENEVE_MAX - 1) 78 enum { 79 LWTUNNEL_IP_OPT_VXLAN_UNSPEC, 80 LWTUNNEL_IP_OPT_VXLAN_GBP, 81 __LWTUNNEL_IP_OPT_VXLAN_MAX, 82 }; 83 #define LWTUNNEL_IP_OPT_VXLAN_MAX (__LWTUNNEL_IP_OPT_VXLAN_MAX - 1) 84 enum { 85 LWTUNNEL_IP_OPT_ERSPAN_UNSPEC, 86 LWTUNNEL_IP_OPT_ERSPAN_VER, 87 LWTUNNEL_IP_OPT_ERSPAN_INDEX, 88 LWTUNNEL_IP_OPT_ERSPAN_DIR, 89 LWTUNNEL_IP_OPT_ERSPAN_HWID, 90 __LWTUNNEL_IP_OPT_ERSPAN_MAX, 91 }; 92 #define LWTUNNEL_IP_OPT_ERSPAN_MAX (__LWTUNNEL_IP_OPT_ERSPAN_MAX - 1) 93 enum { 94 LWT_BPF_PROG_UNSPEC, 95 LWT_BPF_PROG_FD, 96 LWT_BPF_PROG_NAME, 97 __LWT_BPF_PROG_MAX, 98 }; 99 #define LWT_BPF_PROG_MAX (__LWT_BPF_PROG_MAX - 1) 100 enum { 101 LWT_BPF_UNSPEC, 102 LWT_BPF_IN, 103 LWT_BPF_OUT, 104 LWT_BPF_XMIT, 105 LWT_BPF_XMIT_HEADROOM, 106 __LWT_BPF_MAX, 107 }; 108 #define LWT_BPF_MAX (__LWT_BPF_MAX - 1) 109 #define LWT_BPF_MAX_HEADROOM 256 110 #endif 111