/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ #ifndef _LWTUNNEL_H_ #define _LWTUNNEL_H_ #include enum lwtunnel_encap_types { LWTUNNEL_ENCAP_NONE, LWTUNNEL_ENCAP_MPLS, LWTUNNEL_ENCAP_IP, LWTUNNEL_ENCAP_ILA, LWTUNNEL_ENCAP_IP6, LWTUNNEL_ENCAP_SEG6, LWTUNNEL_ENCAP_BPF, LWTUNNEL_ENCAP_SEG6_LOCAL, LWTUNNEL_ENCAP_RPL, LWTUNNEL_ENCAP_IOAM6, __LWTUNNEL_ENCAP_MAX, }; #define LWTUNNEL_ENCAP_MAX (__LWTUNNEL_ENCAP_MAX - 1) enum lwtunnel_ip_t { LWTUNNEL_IP_UNSPEC, LWTUNNEL_IP_ID, LWTUNNEL_IP_DST, LWTUNNEL_IP_SRC, LWTUNNEL_IP_TTL, LWTUNNEL_IP_TOS, LWTUNNEL_IP_FLAGS, LWTUNNEL_IP_PAD, LWTUNNEL_IP_OPTS, __LWTUNNEL_IP_MAX, }; #define LWTUNNEL_IP_MAX (__LWTUNNEL_IP_MAX - 1) enum lwtunnel_ip6_t { LWTUNNEL_IP6_UNSPEC, LWTUNNEL_IP6_ID, LWTUNNEL_IP6_DST, LWTUNNEL_IP6_SRC, LWTUNNEL_IP6_HOPLIMIT, LWTUNNEL_IP6_TC, LWTUNNEL_IP6_FLAGS, LWTUNNEL_IP6_PAD, LWTUNNEL_IP6_OPTS, __LWTUNNEL_IP6_MAX, }; #define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1) enum { LWTUNNEL_IP_OPTS_UNSPEC, LWTUNNEL_IP_OPTS_GENEVE, LWTUNNEL_IP_OPTS_VXLAN, LWTUNNEL_IP_OPTS_ERSPAN, __LWTUNNEL_IP_OPTS_MAX, }; #define LWTUNNEL_IP_OPTS_MAX (__LWTUNNEL_IP_OPTS_MAX - 1) enum { LWTUNNEL_IP_OPT_GENEVE_UNSPEC, LWTUNNEL_IP_OPT_GENEVE_CLASS, LWTUNNEL_IP_OPT_GENEVE_TYPE, LWTUNNEL_IP_OPT_GENEVE_DATA, __LWTUNNEL_IP_OPT_GENEVE_MAX, }; #define LWTUNNEL_IP_OPT_GENEVE_MAX (__LWTUNNEL_IP_OPT_GENEVE_MAX - 1) enum { LWTUNNEL_IP_OPT_VXLAN_UNSPEC, LWTUNNEL_IP_OPT_VXLAN_GBP, __LWTUNNEL_IP_OPT_VXLAN_MAX, }; #define LWTUNNEL_IP_OPT_VXLAN_MAX (__LWTUNNEL_IP_OPT_VXLAN_MAX - 1) enum { LWTUNNEL_IP_OPT_ERSPAN_UNSPEC, LWTUNNEL_IP_OPT_ERSPAN_VER, LWTUNNEL_IP_OPT_ERSPAN_INDEX, LWTUNNEL_IP_OPT_ERSPAN_DIR, LWTUNNEL_IP_OPT_ERSPAN_HWID, __LWTUNNEL_IP_OPT_ERSPAN_MAX, }; #define LWTUNNEL_IP_OPT_ERSPAN_MAX (__LWTUNNEL_IP_OPT_ERSPAN_MAX - 1) enum { LWT_BPF_PROG_UNSPEC, LWT_BPF_PROG_FD, LWT_BPF_PROG_NAME, __LWT_BPF_PROG_MAX, }; #define LWT_BPF_PROG_MAX (__LWT_BPF_PROG_MAX - 1) enum { LWT_BPF_UNSPEC, LWT_BPF_IN, LWT_BPF_OUT, LWT_BPF_XMIT, LWT_BPF_XMIT_HEADROOM, __LWT_BPF_MAX, }; #define LWT_BPF_MAX (__LWT_BPF_MAX - 1) #define LWT_BPF_MAX_HEADROOM 256 #endif /* _LWTUNNEL_H_ */