1 /* 2 * This header was generated from the Linux kernel headers by update_headers.py, 3 * to provide necessary information from kernel to userspace, such as constants, 4 * structures, and macros, and thus, contains no copyrightable information. 5 */ 6 #ifndef _UAPI_LWTUNNEL_H_ 7 #define _UAPI_LWTUNNEL_H_ 8 #include <linux/types.h> 9 enum lwtunnel_encap_types { 10 LWTUNNEL_ENCAP_NONE, 11 LWTUNNEL_ENCAP_MPLS, 12 LWTUNNEL_ENCAP_IP, 13 LWTUNNEL_ENCAP_ILA, 14 LWTUNNEL_ENCAP_IP6, 15 LWTUNNEL_ENCAP_SEG6, 16 LWTUNNEL_ENCAP_BPF, 17 LWTUNNEL_ENCAP_SEG6_LOCAL, 18 __LWTUNNEL_ENCAP_MAX, 19 }; 20 #define LWTUNNEL_ENCAP_MAX (__LWTUNNEL_ENCAP_MAX - 1) 21 enum lwtunnel_ip_t { 22 LWTUNNEL_IP_UNSPEC, 23 LWTUNNEL_IP_ID, 24 LWTUNNEL_IP_DST, 25 LWTUNNEL_IP_SRC, 26 LWTUNNEL_IP_TTL, 27 LWTUNNEL_IP_TOS, 28 LWTUNNEL_IP_FLAGS, 29 LWTUNNEL_IP_PAD, 30 __LWTUNNEL_IP_MAX, 31 }; 32 #define LWTUNNEL_IP_MAX (__LWTUNNEL_IP_MAX - 1) 33 enum lwtunnel_ip6_t { 34 LWTUNNEL_IP6_UNSPEC, 35 LWTUNNEL_IP6_ID, 36 LWTUNNEL_IP6_DST, 37 LWTUNNEL_IP6_SRC, 38 LWTUNNEL_IP6_HOPLIMIT, 39 LWTUNNEL_IP6_TC, 40 LWTUNNEL_IP6_FLAGS, 41 LWTUNNEL_IP6_PAD, 42 __LWTUNNEL_IP6_MAX, 43 }; 44 #define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1) 45 enum { 46 LWT_BPF_PROG_UNSPEC, 47 LWT_BPF_PROG_FD, 48 LWT_BPF_PROG_NAME, 49 __LWT_BPF_PROG_MAX, 50 }; 51 #define LWT_BPF_PROG_MAX (__LWT_BPF_PROG_MAX - 1) 52 enum { 53 LWT_BPF_UNSPEC, 54 LWT_BPF_IN, 55 LWT_BPF_OUT, 56 LWT_BPF_XMIT, 57 LWT_BPF_XMIT_HEADROOM, 58 __LWT_BPF_MAX, 59 }; 60 #define LWT_BPF_MAX (__LWT_BPF_MAX - 1) 61 #define LWT_BPF_MAX_HEADROOM 256 62 #endif 63