1#ifndef _UAPI_LWTUNNEL_H_
2#define _UAPI_LWTUNNEL_H_
3
4#include <linux/types.h>
5
6enum lwtunnel_encap_types {
7 LWTUNNEL_ENCAP_NONE,
8 LWTUNNEL_ENCAP_MPLS,
9 LWTUNNEL_ENCAP_IP,
10 LWTUNNEL_ENCAP_ILA,
11 LWTUNNEL_ENCAP_IP6,
12 LWTUNNEL_ENCAP_SEG6,
13 LWTUNNEL_ENCAP_BPF,
14 __LWTUNNEL_ENCAP_MAX,
15};
16
17#define LWTUNNEL_ENCAP_MAX (__LWTUNNEL_ENCAP_MAX - 1)
18
19enum lwtunnel_ip_t {
20 LWTUNNEL_IP_UNSPEC,
21 LWTUNNEL_IP_ID,
22 LWTUNNEL_IP_DST,
23 LWTUNNEL_IP_SRC,
24 LWTUNNEL_IP_TTL,
25 LWTUNNEL_IP_TOS,
26 LWTUNNEL_IP_FLAGS,
27 LWTUNNEL_IP_PAD,
28 __LWTUNNEL_IP_MAX,
29};
30
31#define LWTUNNEL_IP_MAX (__LWTUNNEL_IP_MAX - 1)
32
33enum 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
45#define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1)
46
47enum {
48 LWT_BPF_PROG_UNSPEC,
49 LWT_BPF_PROG_FD,
50 LWT_BPF_PROG_NAME,
51 __LWT_BPF_PROG_MAX,
52};
53
54#define LWT_BPF_PROG_MAX (__LWT_BPF_PROG_MAX - 1)
55
56enum {
57 LWT_BPF_UNSPEC,
58 LWT_BPF_IN,
59 LWT_BPF_OUT,
60 LWT_BPF_XMIT,
61 LWT_BPF_XMIT_HEADROOM,
62 __LWT_BPF_MAX,
63};
64
65#define LWT_BPF_MAX (__LWT_BPF_MAX - 1)
66
67#define LWT_BPF_MAX_HEADROOM 256
68
69#endif
70