blob: f472150e9cd1e8cadf0b08741f91631d5d3c2955 [file] [log] [blame]
Christopher Ferris05d08e92016-02-04 13:16:38 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _UAPI_LWTUNNEL_H_
20#define _UAPI_LWTUNNEL_H_
21#include <linux/types.h>
22enum lwtunnel_encap_types {
Christopher Ferris05d08e92016-02-04 13:16:38 -080023 LWTUNNEL_ENCAP_NONE,
24 LWTUNNEL_ENCAP_MPLS,
25 LWTUNNEL_ENCAP_IP,
26 LWTUNNEL_ENCAP_ILA,
Christopher Ferris05d08e92016-02-04 13:16:38 -080027 LWTUNNEL_ENCAP_IP6,
Christopher Ferris48af7cb2017-02-21 12:35:09 -080028 LWTUNNEL_ENCAP_SEG6,
29 LWTUNNEL_ENCAP_BPF,
Christopher Ferris1308ad32017-11-14 17:32:13 -080030 LWTUNNEL_ENCAP_SEG6_LOCAL,
Christopher Ferrisaf09c702020-06-01 20:29:29 -070031 LWTUNNEL_ENCAP_RPL,
Christopher Ferris05d08e92016-02-04 13:16:38 -080032 __LWTUNNEL_ENCAP_MAX,
33};
34#define LWTUNNEL_ENCAP_MAX (__LWTUNNEL_ENCAP_MAX - 1)
Christopher Ferris05d08e92016-02-04 13:16:38 -080035enum lwtunnel_ip_t {
36 LWTUNNEL_IP_UNSPEC,
37 LWTUNNEL_IP_ID,
38 LWTUNNEL_IP_DST,
Christopher Ferris05d08e92016-02-04 13:16:38 -080039 LWTUNNEL_IP_SRC,
40 LWTUNNEL_IP_TTL,
41 LWTUNNEL_IP_TOS,
42 LWTUNNEL_IP_FLAGS,
Christopher Ferris106b3a82016-08-24 12:15:38 -070043 LWTUNNEL_IP_PAD,
Christopher Ferrisd32ca142020-02-04 16:16:51 -080044 LWTUNNEL_IP_OPTS,
Christopher Ferris05d08e92016-02-04 13:16:38 -080045 __LWTUNNEL_IP_MAX,
46};
47#define LWTUNNEL_IP_MAX (__LWTUNNEL_IP_MAX - 1)
Christopher Ferris106b3a82016-08-24 12:15:38 -070048enum lwtunnel_ip6_t {
Christopher Ferris05d08e92016-02-04 13:16:38 -080049 LWTUNNEL_IP6_UNSPEC,
50 LWTUNNEL_IP6_ID,
51 LWTUNNEL_IP6_DST,
Christopher Ferris106b3a82016-08-24 12:15:38 -070052 LWTUNNEL_IP6_SRC,
Christopher Ferris05d08e92016-02-04 13:16:38 -080053 LWTUNNEL_IP6_HOPLIMIT,
54 LWTUNNEL_IP6_TC,
55 LWTUNNEL_IP6_FLAGS,
Christopher Ferris106b3a82016-08-24 12:15:38 -070056 LWTUNNEL_IP6_PAD,
Christopher Ferrisd32ca142020-02-04 16:16:51 -080057 LWTUNNEL_IP6_OPTS,
Christopher Ferris106b3a82016-08-24 12:15:38 -070058 __LWTUNNEL_IP6_MAX,
Christopher Ferris05d08e92016-02-04 13:16:38 -080059};
60#define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1)
Christopher Ferris48af7cb2017-02-21 12:35:09 -080061enum {
Christopher Ferrisd32ca142020-02-04 16:16:51 -080062 LWTUNNEL_IP_OPTS_UNSPEC,
63 LWTUNNEL_IP_OPTS_GENEVE,
64 LWTUNNEL_IP_OPTS_VXLAN,
65 LWTUNNEL_IP_OPTS_ERSPAN,
66 __LWTUNNEL_IP_OPTS_MAX,
67};
68#define LWTUNNEL_IP_OPTS_MAX (__LWTUNNEL_IP_OPTS_MAX - 1)
69enum {
70 LWTUNNEL_IP_OPT_GENEVE_UNSPEC,
71 LWTUNNEL_IP_OPT_GENEVE_CLASS,
72 LWTUNNEL_IP_OPT_GENEVE_TYPE,
73 LWTUNNEL_IP_OPT_GENEVE_DATA,
74 __LWTUNNEL_IP_OPT_GENEVE_MAX,
75};
76#define LWTUNNEL_IP_OPT_GENEVE_MAX (__LWTUNNEL_IP_OPT_GENEVE_MAX - 1)
77enum {
78 LWTUNNEL_IP_OPT_VXLAN_UNSPEC,
79 LWTUNNEL_IP_OPT_VXLAN_GBP,
80 __LWTUNNEL_IP_OPT_VXLAN_MAX,
81};
82#define LWTUNNEL_IP_OPT_VXLAN_MAX (__LWTUNNEL_IP_OPT_VXLAN_MAX - 1)
83enum {
84 LWTUNNEL_IP_OPT_ERSPAN_UNSPEC,
85 LWTUNNEL_IP_OPT_ERSPAN_VER,
86 LWTUNNEL_IP_OPT_ERSPAN_INDEX,
87 LWTUNNEL_IP_OPT_ERSPAN_DIR,
88 LWTUNNEL_IP_OPT_ERSPAN_HWID,
89 __LWTUNNEL_IP_OPT_ERSPAN_MAX,
90};
91#define LWTUNNEL_IP_OPT_ERSPAN_MAX (__LWTUNNEL_IP_OPT_ERSPAN_MAX - 1)
92enum {
Christopher Ferris48af7cb2017-02-21 12:35:09 -080093 LWT_BPF_PROG_UNSPEC,
Christopher Ferris48af7cb2017-02-21 12:35:09 -080094 LWT_BPF_PROG_FD,
95 LWT_BPF_PROG_NAME,
96 __LWT_BPF_PROG_MAX,
97};
Christopher Ferris48af7cb2017-02-21 12:35:09 -080098#define LWT_BPF_PROG_MAX (__LWT_BPF_PROG_MAX - 1)
99enum {
100 LWT_BPF_UNSPEC,
101 LWT_BPF_IN,
Christopher Ferris48af7cb2017-02-21 12:35:09 -0800102 LWT_BPF_OUT,
103 LWT_BPF_XMIT,
104 LWT_BPF_XMIT_HEADROOM,
105 __LWT_BPF_MAX,
Christopher Ferris48af7cb2017-02-21 12:35:09 -0800106};
107#define LWT_BPF_MAX (__LWT_BPF_MAX - 1)
108#define LWT_BPF_MAX_HEADROOM 256
Christopher Ferris05d08e92016-02-04 13:16:38 -0800109#endif