1
2
3
4
5
6
7
8
9
10
11
12 #ifndef __LINUX_TC_TUNNEL_KEY_H
13 #define __LINUX_TC_TUNNEL_KEY_H
14
15 #include <linux/pkt_cls.h>
16
17 #define TCA_TUNNEL_KEY_ACT_SET 1
18 #define TCA_TUNNEL_KEY_ACT_RELEASE 2
19
20 struct tc_tunnel_key {
21 tc_gen;
22 int t_action;
23 };
24
25 enum {
26 TCA_TUNNEL_KEY_UNSPEC,
27 TCA_TUNNEL_KEY_TM,
28 TCA_TUNNEL_KEY_PARMS,
29 TCA_TUNNEL_KEY_ENC_IPV4_SRC,
30 TCA_TUNNEL_KEY_ENC_IPV4_DST,
31 TCA_TUNNEL_KEY_ENC_IPV6_SRC,
32 TCA_TUNNEL_KEY_ENC_IPV6_DST,
33 TCA_TUNNEL_KEY_ENC_KEY_ID,
34 TCA_TUNNEL_KEY_PAD,
35 TCA_TUNNEL_KEY_ENC_DST_PORT,
36 TCA_TUNNEL_KEY_NO_CSUM,
37 TCA_TUNNEL_KEY_ENC_OPTS,
38
39
40 TCA_TUNNEL_KEY_ENC_TOS,
41 TCA_TUNNEL_KEY_ENC_TTL,
42 __TCA_TUNNEL_KEY_MAX,
43 };
44
45 #define TCA_TUNNEL_KEY_MAX (__TCA_TUNNEL_KEY_MAX - 1)
46
47 enum {
48 TCA_TUNNEL_KEY_ENC_OPTS_UNSPEC,
49 TCA_TUNNEL_KEY_ENC_OPTS_GENEVE,
50
51
52
53 __TCA_TUNNEL_KEY_ENC_OPTS_MAX,
54 };
55
56 #define TCA_TUNNEL_KEY_ENC_OPTS_MAX (__TCA_TUNNEL_KEY_ENC_OPTS_MAX - 1)
57
58 enum {
59 TCA_TUNNEL_KEY_ENC_OPT_GENEVE_UNSPEC,
60 TCA_TUNNEL_KEY_ENC_OPT_GENEVE_CLASS,
61 TCA_TUNNEL_KEY_ENC_OPT_GENEVE_TYPE,
62 TCA_TUNNEL_KEY_ENC_OPT_GENEVE_DATA,
63
64 __TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX,
65 };
66
67 #define TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX \
68 (__TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX - 1)
69
70 #endif