/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
#ifndef _UAPI_LWTUNNEL_H_
#define _UAPI_LWTUNNEL_H_

#include <linux/types.h>

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 /* _UAPI_LWTUNNEL_H_ */
