|
|
930fb9 |
From 94b44c8f431c8d159fee6c067aded7b9c4e71104 Mon Sep 17 00:00:00 2001
|
|
|
930fb9 |
From: Phil Sutter <psutter@redhat.com>
|
|
|
930fb9 |
Date: Thu, 25 Oct 2018 17:00:00 +0200
|
|
|
930fb9 |
Subject: [PATCH] Update kernel headers
|
|
|
930fb9 |
|
|
|
930fb9 |
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1637440
|
|
|
930fb9 |
Upstream Status: RHEL-only
|
|
|
930fb9 |
|
|
|
930fb9 |
This updates include/uapi/linux to the state of upstream commit
|
|
|
930fb9 |
d9c0be4e9795473a73793058674c34d56cdb5eea.
|
|
|
930fb9 |
---
|
|
|
930fb9 |
include/uapi/linux/bpf.h | 121 ++++++++++++++++++++++++++++++++++++++++-
|
|
|
930fb9 |
include/uapi/linux/btf.h | 2 +-
|
|
|
930fb9 |
include/uapi/linux/can.h | 2 +-
|
|
|
930fb9 |
include/uapi/linux/gen_stats.h | 1 +
|
|
|
930fb9 |
include/uapi/linux/if_addr.h | 1 +
|
|
|
930fb9 |
include/uapi/linux/if_arp.h | 18 +++---
|
|
|
930fb9 |
include/uapi/linux/if_link.h | 15 +++++
|
|
|
930fb9 |
include/uapi/linux/if_packet.h | 1 +
|
|
|
930fb9 |
include/uapi/linux/in6.h | 1 +
|
|
|
930fb9 |
include/uapi/linux/ip.h | 1 +
|
|
|
930fb9 |
include/uapi/linux/l2tp.h | 15 ++---
|
|
|
930fb9 |
include/uapi/linux/neighbour.h | 1 +
|
|
|
930fb9 |
include/uapi/linux/netconf.h | 1 +
|
|
|
930fb9 |
include/uapi/linux/pkt_cls.h | 34 +++++++++++-
|
|
|
930fb9 |
include/uapi/linux/pkt_sched.h | 21 ++++++-
|
|
|
930fb9 |
include/uapi/linux/rtnetlink.h | 7 +++
|
|
|
930fb9 |
include/uapi/linux/tcp.h | 14 ++++-
|
|
|
930fb9 |
include/uapi/linux/xfrm.h | 5 +-
|
|
|
930fb9 |
18 files changed, 235 insertions(+), 26 deletions(-)
|
|
|
930fb9 |
|
|
|
930fb9 |
diff --git a/include/uapi/linux/bpf.h b/include/uapi/linux/bpf.h
|
|
|
930fb9 |
index b9a6367..abb7f77 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/bpf.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/bpf.h
|
|
|
930fb9 |
@@ -75,6 +75,11 @@ struct bpf_lpm_trie_key {
|
|
|
930fb9 |
__u8 data[0]; /* Arbitrary size */
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
+struct bpf_cgroup_storage_key {
|
|
|
930fb9 |
+ __u64 cgroup_inode_id; /* cgroup inode id */
|
|
|
930fb9 |
+ __u32 attach_type; /* program attach type */
|
|
|
930fb9 |
+};
|
|
|
930fb9 |
+
|
|
|
930fb9 |
/* BPF syscall commands, see bpf(2) man-page for details. */
|
|
|
930fb9 |
enum bpf_cmd {
|
|
|
930fb9 |
BPF_MAP_CREATE,
|
|
|
930fb9 |
@@ -120,6 +125,8 @@ enum bpf_map_type {
|
|
|
930fb9 |
BPF_MAP_TYPE_CPUMAP,
|
|
|
930fb9 |
BPF_MAP_TYPE_XSKMAP,
|
|
|
930fb9 |
BPF_MAP_TYPE_SOCKHASH,
|
|
|
930fb9 |
+ BPF_MAP_TYPE_CGROUP_STORAGE,
|
|
|
930fb9 |
+ BPF_MAP_TYPE_REUSEPORT_SOCKARRAY,
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
enum bpf_prog_type {
|
|
|
930fb9 |
@@ -144,6 +151,8 @@ enum bpf_prog_type {
|
|
|
930fb9 |
BPF_PROG_TYPE_CGROUP_SOCK_ADDR,
|
|
|
930fb9 |
BPF_PROG_TYPE_LWT_SEG6LOCAL,
|
|
|
930fb9 |
BPF_PROG_TYPE_LIRC_MODE2,
|
|
|
930fb9 |
+ BPF_PROG_TYPE_SK_REUSEPORT,
|
|
|
930fb9 |
+ BPF_PROG_TYPE_FLOW_DISSECTOR,
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
enum bpf_attach_type {
|
|
|
930fb9 |
@@ -164,6 +173,7 @@ enum bpf_attach_type {
|
|
|
930fb9 |
BPF_CGROUP_UDP4_SENDMSG,
|
|
|
930fb9 |
BPF_CGROUP_UDP6_SENDMSG,
|
|
|
930fb9 |
BPF_LIRC_MODE2,
|
|
|
930fb9 |
+ BPF_FLOW_DISSECTOR,
|
|
|
930fb9 |
__MAX_BPF_ATTACH_TYPE
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
@@ -1371,6 +1381,20 @@ union bpf_attr {
|
|
|
930fb9 |
* A 8-byte long non-decreasing number on success, or 0 if the
|
|
|
930fb9 |
* socket field is missing inside *skb*.
|
|
|
930fb9 |
*
|
|
|
930fb9 |
+ * u64 bpf_get_socket_cookie(struct bpf_sock_addr *ctx)
|
|
|
930fb9 |
+ * Description
|
|
|
930fb9 |
+ * Equivalent to bpf_get_socket_cookie() helper that accepts
|
|
|
930fb9 |
+ * *skb*, but gets socket from **struct bpf_sock_addr** contex.
|
|
|
930fb9 |
+ * Return
|
|
|
930fb9 |
+ * A 8-byte long non-decreasing number.
|
|
|
930fb9 |
+ *
|
|
|
930fb9 |
+ * u64 bpf_get_socket_cookie(struct bpf_sock_ops *ctx)
|
|
|
930fb9 |
+ * Description
|
|
|
930fb9 |
+ * Equivalent to bpf_get_socket_cookie() helper that accepts
|
|
|
930fb9 |
+ * *skb*, but gets socket from **struct bpf_sock_ops** contex.
|
|
|
930fb9 |
+ * Return
|
|
|
930fb9 |
+ * A 8-byte long non-decreasing number.
|
|
|
930fb9 |
+ *
|
|
|
930fb9 |
* u32 bpf_get_socket_uid(struct sk_buff *skb)
|
|
|
930fb9 |
* Return
|
|
|
930fb9 |
* The owner UID of the socket associated to *skb*. If the socket
|
|
|
930fb9 |
@@ -2071,10 +2095,54 @@ union bpf_attr {
|
|
|
930fb9 |
* Return
|
|
|
930fb9 |
* The id is returned or 0 in case the id could not be retrieved.
|
|
|
930fb9 |
*
|
|
|
930fb9 |
+ * u64 bpf_skb_ancestor_cgroup_id(struct sk_buff *skb, int ancestor_level)
|
|
|
930fb9 |
+ * Description
|
|
|
930fb9 |
+ * Return id of cgroup v2 that is ancestor of cgroup associated
|
|
|
930fb9 |
+ * with the *skb* at the *ancestor_level*. The root cgroup is at
|
|
|
930fb9 |
+ * *ancestor_level* zero and each step down the hierarchy
|
|
|
930fb9 |
+ * increments the level. If *ancestor_level* == level of cgroup
|
|
|
930fb9 |
+ * associated with *skb*, then return value will be same as that
|
|
|
930fb9 |
+ * of **bpf_skb_cgroup_id**\ ().
|
|
|
930fb9 |
+ *
|
|
|
930fb9 |
+ * The helper is useful to implement policies based on cgroups
|
|
|
930fb9 |
+ * that are upper in hierarchy than immediate cgroup associated
|
|
|
930fb9 |
+ * with *skb*.
|
|
|
930fb9 |
+ *
|
|
|
930fb9 |
+ * The format of returned id and helper limitations are same as in
|
|
|
930fb9 |
+ * **bpf_skb_cgroup_id**\ ().
|
|
|
930fb9 |
+ * Return
|
|
|
930fb9 |
+ * The id is returned or 0 in case the id could not be retrieved.
|
|
|
930fb9 |
+ *
|
|
|
930fb9 |
* u64 bpf_get_current_cgroup_id(void)
|
|
|
930fb9 |
* Return
|
|
|
930fb9 |
* A 64-bit integer containing the current cgroup id based
|
|
|
930fb9 |
* on the cgroup within which the current task is running.
|
|
|
930fb9 |
+ *
|
|
|
930fb9 |
+ * void* get_local_storage(void *map, u64 flags)
|
|
|
930fb9 |
+ * Description
|
|
|
930fb9 |
+ * Get the pointer to the local storage area.
|
|
|
930fb9 |
+ * The type and the size of the local storage is defined
|
|
|
930fb9 |
+ * by the *map* argument.
|
|
|
930fb9 |
+ * The *flags* meaning is specific for each map type,
|
|
|
930fb9 |
+ * and has to be 0 for cgroup local storage.
|
|
|
930fb9 |
+ *
|
|
|
930fb9 |
+ * Depending on the bpf program type, a local storage area
|
|
|
930fb9 |
+ * can be shared between multiple instances of the bpf program,
|
|
|
930fb9 |
+ * running simultaneously.
|
|
|
930fb9 |
+ *
|
|
|
930fb9 |
+ * A user should care about the synchronization by himself.
|
|
|
930fb9 |
+ * For example, by using the BPF_STX_XADD instruction to alter
|
|
|
930fb9 |
+ * the shared data.
|
|
|
930fb9 |
+ * Return
|
|
|
930fb9 |
+ * Pointer to the local storage area.
|
|
|
930fb9 |
+ *
|
|
|
930fb9 |
+ * int bpf_sk_select_reuseport(struct sk_reuseport_md *reuse, struct bpf_map *map, void *key, u64 flags)
|
|
|
930fb9 |
+ * Description
|
|
|
930fb9 |
+ * Select a SO_REUSEPORT sk from a BPF_MAP_TYPE_REUSEPORT_ARRAY map
|
|
|
930fb9 |
+ * It checks the selected sk is matching the incoming
|
|
|
930fb9 |
+ * request in the skb.
|
|
|
930fb9 |
+ * Return
|
|
|
930fb9 |
+ * 0 on success, or a negative error in case of failure.
|
|
|
930fb9 |
*/
|
|
|
930fb9 |
#define __BPF_FUNC_MAPPER(FN) \
|
|
|
930fb9 |
FN(unspec), \
|
|
|
930fb9 |
@@ -2157,7 +2225,10 @@ union bpf_attr {
|
|
|
930fb9 |
FN(rc_repeat), \
|
|
|
930fb9 |
FN(rc_keydown), \
|
|
|
930fb9 |
FN(skb_cgroup_id), \
|
|
|
930fb9 |
- FN(get_current_cgroup_id),
|
|
|
930fb9 |
+ FN(get_current_cgroup_id), \
|
|
|
930fb9 |
+ FN(get_local_storage), \
|
|
|
930fb9 |
+ FN(sk_select_reuseport), \
|
|
|
930fb9 |
+ FN(skb_ancestor_cgroup_id),
|
|
|
930fb9 |
|
|
|
930fb9 |
/* integer value in 'imm' field of BPF_CALL instruction selects which helper
|
|
|
930fb9 |
* function eBPF program intends to call
|
|
|
930fb9 |
@@ -2264,6 +2335,7 @@ struct __sk_buff {
|
|
|
930fb9 |
/* ... here. */
|
|
|
930fb9 |
|
|
|
930fb9 |
__u32 data_meta;
|
|
|
930fb9 |
+ struct bpf_flow_keys *flow_keys;
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
struct bpf_tunnel_key {
|
|
|
930fb9 |
@@ -2374,6 +2446,30 @@ struct sk_msg_md {
|
|
|
930fb9 |
__u32 local_port; /* stored in host byte order */
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
+struct sk_reuseport_md {
|
|
|
930fb9 |
+ /*
|
|
|
930fb9 |
+ * Start of directly accessible data. It begins from
|
|
|
930fb9 |
+ * the tcp/udp header.
|
|
|
930fb9 |
+ */
|
|
|
930fb9 |
+ void *data;
|
|
|
930fb9 |
+ void *data_end; /* End of directly accessible data */
|
|
|
930fb9 |
+ /*
|
|
|
930fb9 |
+ * Total length of packet (starting from the tcp/udp header).
|
|
|
930fb9 |
+ * Note that the directly accessible bytes (data_end - data)
|
|
|
930fb9 |
+ * could be less than this "len". Those bytes could be
|
|
|
930fb9 |
+ * indirectly read by a helper "bpf_skb_load_bytes()".
|
|
|
930fb9 |
+ */
|
|
|
930fb9 |
+ __u32 len;
|
|
|
930fb9 |
+ /*
|
|
|
930fb9 |
+ * Eth protocol in the mac header (network byte order). e.g.
|
|
|
930fb9 |
+ * ETH_P_IP(0x0800) and ETH_P_IPV6(0x86DD)
|
|
|
930fb9 |
+ */
|
|
|
930fb9 |
+ __u32 eth_protocol;
|
|
|
930fb9 |
+ __u32 ip_protocol; /* IP protocol. e.g. IPPROTO_TCP, IPPROTO_UDP */
|
|
|
930fb9 |
+ __u32 bind_inany; /* Is sock bound to an INANY address? */
|
|
|
930fb9 |
+ __u32 hash; /* A hash of the packet 4 tuples */
|
|
|
930fb9 |
+};
|
|
|
930fb9 |
+
|
|
|
930fb9 |
#define BPF_TAG_SIZE 8
|
|
|
930fb9 |
|
|
|
930fb9 |
struct bpf_prog_info {
|
|
|
930fb9 |
@@ -2685,4 +2781,27 @@ enum bpf_task_fd_type {
|
|
|
930fb9 |
BPF_FD_TYPE_URETPROBE, /* filename + offset */
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
+struct bpf_flow_keys {
|
|
|
930fb9 |
+ __u16 nhoff;
|
|
|
930fb9 |
+ __u16 thoff;
|
|
|
930fb9 |
+ __u16 addr_proto; /* ETH_P_* of valid addrs */
|
|
|
930fb9 |
+ __u8 is_frag;
|
|
|
930fb9 |
+ __u8 is_first_frag;
|
|
|
930fb9 |
+ __u8 is_encap;
|
|
|
930fb9 |
+ __u8 ip_proto;
|
|
|
930fb9 |
+ __be16 n_proto;
|
|
|
930fb9 |
+ __be16 sport;
|
|
|
930fb9 |
+ __be16 dport;
|
|
|
930fb9 |
+ union {
|
|
|
930fb9 |
+ struct {
|
|
|
930fb9 |
+ __be32 ipv4_src;
|
|
|
930fb9 |
+ __be32 ipv4_dst;
|
|
|
930fb9 |
+ };
|
|
|
930fb9 |
+ struct {
|
|
|
930fb9 |
+ __u32 ipv6_src[4]; /* in6_addr; network order */
|
|
|
930fb9 |
+ __u32 ipv6_dst[4]; /* in6_addr; network order */
|
|
|
930fb9 |
+ };
|
|
|
930fb9 |
+ };
|
|
|
930fb9 |
+};
|
|
|
930fb9 |
+
|
|
|
930fb9 |
#endif /* __LINUX_BPF_H__ */
|
|
|
930fb9 |
diff --git a/include/uapi/linux/btf.h b/include/uapi/linux/btf.h
|
|
|
930fb9 |
index 5dd580a..8d2a8ff 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/btf.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/btf.h
|
|
|
930fb9 |
@@ -76,7 +76,7 @@ struct btf_type {
|
|
|
930fb9 |
*/
|
|
|
930fb9 |
#define BTF_INT_ENCODING(VAL) (((VAL) & 0x0f000000) >> 24)
|
|
|
930fb9 |
#define BTF_INT_OFFSET(VAL) (((VAL & 0x00ff0000)) >> 16)
|
|
|
930fb9 |
-#define BTF_INT_BITS(VAL) ((VAL) & 0x0000ffff)
|
|
|
930fb9 |
+#define BTF_INT_BITS(VAL) ((VAL) & 0x000000ff)
|
|
|
930fb9 |
|
|
|
930fb9 |
/* Attributes stored in the BTF_INT_ENCODING */
|
|
|
930fb9 |
#define BTF_INT_SIGNED (1 << 0)
|
|
|
930fb9 |
diff --git a/include/uapi/linux/can.h b/include/uapi/linux/can.h
|
|
|
930fb9 |
index 4d1ab8e..9009f0b 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/can.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/can.h
|
|
|
930fb9 |
@@ -77,7 +77,7 @@ typedef __u32 canid_t;
|
|
|
930fb9 |
/*
|
|
|
930fb9 |
* Controller Area Network Error Message Frame Mask structure
|
|
|
930fb9 |
*
|
|
|
930fb9 |
- * bit 0-28 : error class mask (see include/linux/can/error.h)
|
|
|
930fb9 |
+ * bit 0-28 : error class mask (see include/uapi/linux/can/error.h)
|
|
|
930fb9 |
* bit 29-31 : set to zero
|
|
|
930fb9 |
*/
|
|
|
930fb9 |
typedef __u32 can_err_mask_t;
|
|
|
930fb9 |
diff --git a/include/uapi/linux/gen_stats.h b/include/uapi/linux/gen_stats.h
|
|
|
930fb9 |
index 24a861c..065408e 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/gen_stats.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/gen_stats.h
|
|
|
930fb9 |
@@ -12,6 +12,7 @@ enum {
|
|
|
930fb9 |
TCA_STATS_APP,
|
|
|
930fb9 |
TCA_STATS_RATE_EST64,
|
|
|
930fb9 |
TCA_STATS_PAD,
|
|
|
930fb9 |
+ TCA_STATS_BASIC_HW,
|
|
|
930fb9 |
__TCA_STATS_MAX,
|
|
|
930fb9 |
};
|
|
|
930fb9 |
#define TCA_STATS_MAX (__TCA_STATS_MAX - 1)
|
|
|
930fb9 |
diff --git a/include/uapi/linux/if_addr.h b/include/uapi/linux/if_addr.h
|
|
|
930fb9 |
index a924606..c4dd87f 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/if_addr.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/if_addr.h
|
|
|
930fb9 |
@@ -34,6 +34,7 @@ enum {
|
|
|
930fb9 |
IFA_MULTICAST,
|
|
|
930fb9 |
IFA_FLAGS,
|
|
|
930fb9 |
IFA_RT_PRIORITY, /* u32, priority/metric for prefix route */
|
|
|
930fb9 |
+ IFA_TARGET_NETNSID,
|
|
|
930fb9 |
__IFA_MAX,
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
diff --git a/include/uapi/linux/if_arp.h b/include/uapi/linux/if_arp.h
|
|
|
930fb9 |
index cd136a6..dbfbc22 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/if_arp.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/if_arp.h
|
|
|
930fb9 |
@@ -114,18 +114,18 @@
|
|
|
930fb9 |
|
|
|
930fb9 |
/* ARP ioctl request. */
|
|
|
930fb9 |
struct arpreq {
|
|
|
930fb9 |
- struct sockaddr arp_pa; /* protocol address */
|
|
|
930fb9 |
- struct sockaddr arp_ha; /* hardware address */
|
|
|
930fb9 |
- int arp_flags; /* flags */
|
|
|
930fb9 |
- struct sockaddr arp_netmask; /* netmask (only for proxy arps) */
|
|
|
930fb9 |
- char arp_dev[16];
|
|
|
930fb9 |
+ struct sockaddr arp_pa; /* protocol address */
|
|
|
930fb9 |
+ struct sockaddr arp_ha; /* hardware address */
|
|
|
930fb9 |
+ int arp_flags; /* flags */
|
|
|
930fb9 |
+ struct sockaddr arp_netmask; /* netmask (only for proxy arps) */
|
|
|
930fb9 |
+ char arp_dev[IFNAMSIZ];
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
struct arpreq_old {
|
|
|
930fb9 |
- struct sockaddr arp_pa; /* protocol address */
|
|
|
930fb9 |
- struct sockaddr arp_ha; /* hardware address */
|
|
|
930fb9 |
- int arp_flags; /* flags */
|
|
|
930fb9 |
- struct sockaddr arp_netmask; /* netmask (only for proxy arps) */
|
|
|
930fb9 |
+ struct sockaddr arp_pa; /* protocol address */
|
|
|
930fb9 |
+ struct sockaddr arp_ha; /* hardware address */
|
|
|
930fb9 |
+ int arp_flags; /* flags */
|
|
|
930fb9 |
+ struct sockaddr arp_netmask; /* netmask (only for proxy arps) */
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
/* ARP Flag values. */
|
|
|
930fb9 |
diff --git a/include/uapi/linux/if_link.h b/include/uapi/linux/if_link.h
|
|
|
930fb9 |
index 1c64ed4..9c25460 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/if_link.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/if_link.h
|
|
|
930fb9 |
@@ -161,9 +161,12 @@ enum {
|
|
|
930fb9 |
IFLA_EVENT,
|
|
|
930fb9 |
IFLA_NEW_NETNSID,
|
|
|
930fb9 |
IFLA_IF_NETNSID,
|
|
|
930fb9 |
+ IFLA_TARGET_NETNSID = IFLA_IF_NETNSID, /* new alias */
|
|
|
930fb9 |
IFLA_CARRIER_UP_COUNT,
|
|
|
930fb9 |
IFLA_CARRIER_DOWN_COUNT,
|
|
|
930fb9 |
IFLA_NEW_IFINDEX,
|
|
|
930fb9 |
+ IFLA_MIN_MTU,
|
|
|
930fb9 |
+ IFLA_MAX_MTU,
|
|
|
930fb9 |
__IFLA_MAX
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
@@ -332,6 +335,7 @@ enum {
|
|
|
930fb9 |
IFLA_BRPORT_GROUP_FWD_MASK,
|
|
|
930fb9 |
IFLA_BRPORT_NEIGH_SUPPRESS,
|
|
|
930fb9 |
IFLA_BRPORT_ISOLATED,
|
|
|
930fb9 |
+ IFLA_BRPORT_BACKUP_PORT,
|
|
|
930fb9 |
__IFLA_BRPORT_MAX
|
|
|
930fb9 |
};
|
|
|
930fb9 |
#define IFLA_BRPORT_MAX (__IFLA_BRPORT_MAX - 1)
|
|
|
930fb9 |
@@ -457,6 +461,16 @@ enum {
|
|
|
930fb9 |
|
|
|
930fb9 |
#define IFLA_MACSEC_MAX (__IFLA_MACSEC_MAX - 1)
|
|
|
930fb9 |
|
|
|
930fb9 |
+/* XFRM section */
|
|
|
930fb9 |
+enum {
|
|
|
930fb9 |
+ IFLA_XFRM_UNSPEC,
|
|
|
930fb9 |
+ IFLA_XFRM_LINK,
|
|
|
930fb9 |
+ IFLA_XFRM_IF_ID,
|
|
|
930fb9 |
+ __IFLA_XFRM_MAX
|
|
|
930fb9 |
+};
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+#define IFLA_XFRM_MAX (__IFLA_XFRM_MAX - 1)
|
|
|
930fb9 |
+
|
|
|
930fb9 |
enum macsec_validation_type {
|
|
|
930fb9 |
MACSEC_VALIDATE_DISABLED = 0,
|
|
|
930fb9 |
MACSEC_VALIDATE_CHECK = 1,
|
|
|
930fb9 |
@@ -539,6 +553,7 @@ enum {
|
|
|
930fb9 |
IFLA_GENEVE_UDP_ZERO_CSUM6_TX,
|
|
|
930fb9 |
IFLA_GENEVE_UDP_ZERO_CSUM6_RX,
|
|
|
930fb9 |
IFLA_GENEVE_LABEL,
|
|
|
930fb9 |
+ IFLA_GENEVE_TTL_INHERIT,
|
|
|
930fb9 |
__IFLA_GENEVE_MAX
|
|
|
930fb9 |
};
|
|
|
930fb9 |
#define IFLA_GENEVE_MAX (__IFLA_GENEVE_MAX - 1)
|
|
|
930fb9 |
diff --git a/include/uapi/linux/if_packet.h b/include/uapi/linux/if_packet.h
|
|
|
930fb9 |
index 67b61d9..467b654 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/if_packet.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/if_packet.h
|
|
|
930fb9 |
@@ -57,6 +57,7 @@ struct sockaddr_ll {
|
|
|
930fb9 |
#define PACKET_QDISC_BYPASS 20
|
|
|
930fb9 |
#define PACKET_ROLLOVER_STATS 21
|
|
|
930fb9 |
#define PACKET_FANOUT_DATA 22
|
|
|
930fb9 |
+#define PACKET_IGNORE_OUTGOING 23
|
|
|
930fb9 |
|
|
|
930fb9 |
#define PACKET_FANOUT_HASH 0
|
|
|
930fb9 |
#define PACKET_FANOUT_LB 1
|
|
|
930fb9 |
diff --git a/include/uapi/linux/in6.h b/include/uapi/linux/in6.h
|
|
|
930fb9 |
index 409bb3f..2bb132a 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/in6.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/in6.h
|
|
|
930fb9 |
@@ -177,6 +177,7 @@ struct in6_flowlabel_req {
|
|
|
930fb9 |
#define IPV6_V6ONLY 26
|
|
|
930fb9 |
#define IPV6_JOIN_ANYCAST 27
|
|
|
930fb9 |
#define IPV6_LEAVE_ANYCAST 28
|
|
|
930fb9 |
+#define IPV6_MULTICAST_ALL 29
|
|
|
930fb9 |
|
|
|
930fb9 |
/* IPV6_MTU_DISCOVER values */
|
|
|
930fb9 |
#define IPV6_PMTUDISC_DONT 0
|
|
|
930fb9 |
diff --git a/include/uapi/linux/ip.h b/include/uapi/linux/ip.h
|
|
|
930fb9 |
index 883fd33..f4ecd2f 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/ip.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/ip.h
|
|
|
930fb9 |
@@ -168,6 +168,7 @@ enum
|
|
|
930fb9 |
IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN,
|
|
|
930fb9 |
IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST,
|
|
|
930fb9 |
IPV4_DEVCONF_DROP_GRATUITOUS_ARP,
|
|
|
930fb9 |
+ IPV4_DEVCONF_BC_FORWARDING,
|
|
|
930fb9 |
__IPV4_DEVCONF_MAX
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
diff --git a/include/uapi/linux/l2tp.h b/include/uapi/linux/l2tp.h
|
|
|
930fb9 |
index 1fe52a7..131c3a2 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/l2tp.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/l2tp.h
|
|
|
930fb9 |
@@ -60,14 +60,14 @@ struct sockaddr_l2tpip6 {
|
|
|
930fb9 |
/*
|
|
|
930fb9 |
* Commands.
|
|
|
930fb9 |
* Valid TLVs of each command are:-
|
|
|
930fb9 |
- * TUNNEL_CREATE - CONN_ID, pw_type, netns, ifname, ipinfo, udpinfo, udpcsum, vlanid
|
|
|
930fb9 |
+ * TUNNEL_CREATE - CONN_ID, pw_type, netns, ifname, ipinfo, udpinfo, udpcsum
|
|
|
930fb9 |
* TUNNEL_DELETE - CONN_ID
|
|
|
930fb9 |
* TUNNEL_MODIFY - CONN_ID, udpcsum
|
|
|
930fb9 |
* TUNNEL_GETSTATS - CONN_ID, (stats)
|
|
|
930fb9 |
* TUNNEL_GET - CONN_ID, (...)
|
|
|
930fb9 |
- * SESSION_CREATE - SESSION_ID, PW_TYPE, data_seq, cookie, peer_cookie, l2spec
|
|
|
930fb9 |
+ * SESSION_CREATE - SESSION_ID, PW_TYPE, cookie, peer_cookie, l2spec
|
|
|
930fb9 |
* SESSION_DELETE - SESSION_ID
|
|
|
930fb9 |
- * SESSION_MODIFY - SESSION_ID, data_seq
|
|
|
930fb9 |
+ * SESSION_MODIFY - SESSION_ID
|
|
|
930fb9 |
* SESSION_GET - SESSION_ID, (...)
|
|
|
930fb9 |
* SESSION_GETSTATS - SESSION_ID, (stats)
|
|
|
930fb9 |
*
|
|
|
930fb9 |
@@ -95,7 +95,7 @@ enum {
|
|
|
930fb9 |
L2TP_ATTR_PW_TYPE, /* u16, enum l2tp_pwtype */
|
|
|
930fb9 |
L2TP_ATTR_ENCAP_TYPE, /* u16, enum l2tp_encap_type */
|
|
|
930fb9 |
L2TP_ATTR_OFFSET, /* u16 (not used) */
|
|
|
930fb9 |
- L2TP_ATTR_DATA_SEQ, /* u16 */
|
|
|
930fb9 |
+ L2TP_ATTR_DATA_SEQ, /* u16 (not used) */
|
|
|
930fb9 |
L2TP_ATTR_L2SPEC_TYPE, /* u8, enum l2tp_l2spec_type */
|
|
|
930fb9 |
L2TP_ATTR_L2SPEC_LEN, /* u8 (not used) */
|
|
|
930fb9 |
L2TP_ATTR_PROTO_VERSION, /* u8 */
|
|
|
930fb9 |
@@ -105,7 +105,7 @@ enum {
|
|
|
930fb9 |
L2TP_ATTR_SESSION_ID, /* u32 */
|
|
|
930fb9 |
L2TP_ATTR_PEER_SESSION_ID, /* u32 */
|
|
|
930fb9 |
L2TP_ATTR_UDP_CSUM, /* u8 */
|
|
|
930fb9 |
- L2TP_ATTR_VLAN_ID, /* u16 */
|
|
|
930fb9 |
+ L2TP_ATTR_VLAN_ID, /* u16 (not used) */
|
|
|
930fb9 |
L2TP_ATTR_COOKIE, /* 0, 4 or 8 bytes */
|
|
|
930fb9 |
L2TP_ATTR_PEER_COOKIE, /* 0, 4 or 8 bytes */
|
|
|
930fb9 |
L2TP_ATTR_DEBUG, /* u32, enum l2tp_debug_flags */
|
|
|
930fb9 |
@@ -119,8 +119,8 @@ enum {
|
|
|
930fb9 |
L2TP_ATTR_IP_DADDR, /* u32 */
|
|
|
930fb9 |
L2TP_ATTR_UDP_SPORT, /* u16 */
|
|
|
930fb9 |
L2TP_ATTR_UDP_DPORT, /* u16 */
|
|
|
930fb9 |
- L2TP_ATTR_MTU, /* u16 */
|
|
|
930fb9 |
- L2TP_ATTR_MRU, /* u16 */
|
|
|
930fb9 |
+ L2TP_ATTR_MTU, /* u16 (not used) */
|
|
|
930fb9 |
+ L2TP_ATTR_MRU, /* u16 (not used) */
|
|
|
930fb9 |
L2TP_ATTR_STATS, /* nested */
|
|
|
930fb9 |
L2TP_ATTR_IP6_SADDR, /* struct in6_addr */
|
|
|
930fb9 |
L2TP_ATTR_IP6_DADDR, /* struct in6_addr */
|
|
|
930fb9 |
@@ -169,6 +169,7 @@ enum l2tp_encap_type {
|
|
|
930fb9 |
L2TP_ENCAPTYPE_IP,
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
+/* For L2TP_ATTR_DATA_SEQ. Unused. */
|
|
|
930fb9 |
enum l2tp_seqmode {
|
|
|
930fb9 |
L2TP_SEQ_NONE = 0,
|
|
|
930fb9 |
L2TP_SEQ_IP = 1,
|
|
|
930fb9 |
diff --git a/include/uapi/linux/neighbour.h b/include/uapi/linux/neighbour.h
|
|
|
930fb9 |
index 904db61..9981554 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/neighbour.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/neighbour.h
|
|
|
930fb9 |
@@ -43,6 +43,7 @@ enum {
|
|
|
930fb9 |
#define NTF_PROXY 0x08 /* == ATF_PUBL */
|
|
|
930fb9 |
#define NTF_EXT_LEARNED 0x10
|
|
|
930fb9 |
#define NTF_OFFLOADED 0x20
|
|
|
930fb9 |
+#define NTF_STICKY 0x40
|
|
|
930fb9 |
#define NTF_ROUTER 0x80
|
|
|
930fb9 |
|
|
|
930fb9 |
/*
|
|
|
930fb9 |
diff --git a/include/uapi/linux/netconf.h b/include/uapi/linux/netconf.h
|
|
|
930fb9 |
index 86ac1eb..229e885 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/netconf.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/netconf.h
|
|
|
930fb9 |
@@ -18,6 +18,7 @@ enum {
|
|
|
930fb9 |
NETCONFA_PROXY_NEIGH,
|
|
|
930fb9 |
NETCONFA_IGNORE_ROUTES_WITH_LINKDOWN,
|
|
|
930fb9 |
NETCONFA_INPUT,
|
|
|
930fb9 |
+ NETCONFA_BC_FORWARDING,
|
|
|
930fb9 |
__NETCONFA_MAX
|
|
|
930fb9 |
};
|
|
|
930fb9 |
#define NETCONFA_MAX (__NETCONFA_MAX - 1)
|
|
|
930fb9 |
diff --git a/include/uapi/linux/pkt_cls.h b/include/uapi/linux/pkt_cls.h
|
|
|
930fb9 |
index b451225..401d0c1 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/pkt_cls.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/pkt_cls.h
|
|
|
930fb9 |
@@ -45,6 +45,7 @@ enum {
|
|
|
930fb9 |
* the skb and act like everything
|
|
|
930fb9 |
* is alright.
|
|
|
930fb9 |
*/
|
|
|
930fb9 |
+#define TC_ACT_VALUE_MAX TC_ACT_TRAP
|
|
|
930fb9 |
|
|
|
930fb9 |
/* There is a special kind of actions called "extended actions",
|
|
|
930fb9 |
* which need a value parameter. These have a local opcode located in
|
|
|
930fb9 |
@@ -55,11 +56,12 @@ enum {
|
|
|
930fb9 |
#define __TC_ACT_EXT_SHIFT 28
|
|
|
930fb9 |
#define __TC_ACT_EXT(local) ((local) << __TC_ACT_EXT_SHIFT)
|
|
|
930fb9 |
#define TC_ACT_EXT_VAL_MASK ((1 << __TC_ACT_EXT_SHIFT) - 1)
|
|
|
930fb9 |
-#define TC_ACT_EXT_CMP(combined, opcode) \
|
|
|
930fb9 |
- (((combined) & (~TC_ACT_EXT_VAL_MASK)) == opcode)
|
|
|
930fb9 |
+#define TC_ACT_EXT_OPCODE(combined) ((combined) & (~TC_ACT_EXT_VAL_MASK))
|
|
|
930fb9 |
+#define TC_ACT_EXT_CMP(combined, opcode) (TC_ACT_EXT_OPCODE(combined) == opcode)
|
|
|
930fb9 |
|
|
|
930fb9 |
#define TC_ACT_JUMP __TC_ACT_EXT(1)
|
|
|
930fb9 |
#define TC_ACT_GOTO_CHAIN __TC_ACT_EXT(2)
|
|
|
930fb9 |
+#define TC_ACT_EXT_OPCODE_MAX TC_ACT_GOTO_CHAIN
|
|
|
930fb9 |
|
|
|
930fb9 |
/* Action type identifiers*/
|
|
|
930fb9 |
enum {
|
|
|
930fb9 |
@@ -478,12 +480,40 @@ enum {
|
|
|
930fb9 |
TCA_FLOWER_KEY_ENC_IP_TTL, /* u8 */
|
|
|
930fb9 |
TCA_FLOWER_KEY_ENC_IP_TTL_MASK, /* u8 */
|
|
|
930fb9 |
|
|
|
930fb9 |
+ TCA_FLOWER_KEY_ENC_OPTS,
|
|
|
930fb9 |
+ TCA_FLOWER_KEY_ENC_OPTS_MASK,
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+ TCA_FLOWER_IN_HW_COUNT,
|
|
|
930fb9 |
+
|
|
|
930fb9 |
__TCA_FLOWER_MAX,
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
#define TCA_FLOWER_MAX (__TCA_FLOWER_MAX - 1)
|
|
|
930fb9 |
|
|
|
930fb9 |
enum {
|
|
|
930fb9 |
+ TCA_FLOWER_KEY_ENC_OPTS_UNSPEC,
|
|
|
930fb9 |
+ TCA_FLOWER_KEY_ENC_OPTS_GENEVE, /* Nested
|
|
|
930fb9 |
+ * TCA_FLOWER_KEY_ENC_OPT_GENEVE_
|
|
|
930fb9 |
+ * attributes
|
|
|
930fb9 |
+ */
|
|
|
930fb9 |
+ __TCA_FLOWER_KEY_ENC_OPTS_MAX,
|
|
|
930fb9 |
+};
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+#define TCA_FLOWER_KEY_ENC_OPTS_MAX (__TCA_FLOWER_KEY_ENC_OPTS_MAX - 1)
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+enum {
|
|
|
930fb9 |
+ TCA_FLOWER_KEY_ENC_OPT_GENEVE_UNSPEC,
|
|
|
930fb9 |
+ TCA_FLOWER_KEY_ENC_OPT_GENEVE_CLASS, /* u16 */
|
|
|
930fb9 |
+ TCA_FLOWER_KEY_ENC_OPT_GENEVE_TYPE, /* u8 */
|
|
|
930fb9 |
+ TCA_FLOWER_KEY_ENC_OPT_GENEVE_DATA, /* 4 to 128 bytes */
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+ __TCA_FLOWER_KEY_ENC_OPT_GENEVE_MAX,
|
|
|
930fb9 |
+};
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+#define TCA_FLOWER_KEY_ENC_OPT_GENEVE_MAX \
|
|
|
930fb9 |
+ (__TCA_FLOWER_KEY_ENC_OPT_GENEVE_MAX - 1)
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+enum {
|
|
|
930fb9 |
TCA_FLOWER_KEY_FLAGS_IS_FRAGMENT = (1 << 0),
|
|
|
930fb9 |
TCA_FLOWER_KEY_FLAGS_FRAG_IS_FIRST = (1 << 1),
|
|
|
930fb9 |
};
|
|
|
930fb9 |
diff --git a/include/uapi/linux/pkt_sched.h b/include/uapi/linux/pkt_sched.h
|
|
|
930fb9 |
index d9cc9dc..e9b7244 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/pkt_sched.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/pkt_sched.h
|
|
|
930fb9 |
@@ -124,6 +124,21 @@ struct tc_fifo_qopt {
|
|
|
930fb9 |
__u32 limit; /* Queue length: bytes for bfifo, packets for pfifo */
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
+/* SKBPRIO section */
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+/*
|
|
|
930fb9 |
+ * Priorities go from zero to (SKBPRIO_MAX_PRIORITY - 1).
|
|
|
930fb9 |
+ * SKBPRIO_MAX_PRIORITY should be at least 64 in order for skbprio to be able
|
|
|
930fb9 |
+ * to map one to one the DS field of IPV4 and IPV6 headers.
|
|
|
930fb9 |
+ * Memory allocation grows linearly with SKBPRIO_MAX_PRIORITY.
|
|
|
930fb9 |
+ */
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+#define SKBPRIO_MAX_PRIORITY 64
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+struct tc_skbprio_qopt {
|
|
|
930fb9 |
+ __u32 limit; /* Queue length in packets. */
|
|
|
930fb9 |
+};
|
|
|
930fb9 |
+
|
|
|
930fb9 |
/* PRIO section */
|
|
|
930fb9 |
|
|
|
930fb9 |
#define TCQ_PRIO_BANDS 16
|
|
|
930fb9 |
@@ -380,9 +395,9 @@ enum {
|
|
|
930fb9 |
struct tc_htb_xstats {
|
|
|
930fb9 |
__u32 lends;
|
|
|
930fb9 |
__u32 borrows;
|
|
|
930fb9 |
- __u32 giants; /* too big packets (rate will not be accurate) */
|
|
|
930fb9 |
- __u32 tokens;
|
|
|
930fb9 |
- __u32 ctokens;
|
|
|
930fb9 |
+ __u32 giants; /* unused since 'Make HTB scheduler work with TSO.' */
|
|
|
930fb9 |
+ __s32 tokens;
|
|
|
930fb9 |
+ __s32 ctokens;
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
/* HFSC section */
|
|
|
930fb9 |
diff --git a/include/uapi/linux/rtnetlink.h b/include/uapi/linux/rtnetlink.h
|
|
|
930fb9 |
index c3a7d8e..8c1d600 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/rtnetlink.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/rtnetlink.h
|
|
|
930fb9 |
@@ -150,6 +150,13 @@ enum {
|
|
|
930fb9 |
RTM_NEWCACHEREPORT = 96,
|
|
|
930fb9 |
#define RTM_NEWCACHEREPORT RTM_NEWCACHEREPORT
|
|
|
930fb9 |
|
|
|
930fb9 |
+ RTM_NEWCHAIN = 100,
|
|
|
930fb9 |
+#define RTM_NEWCHAIN RTM_NEWCHAIN
|
|
|
930fb9 |
+ RTM_DELCHAIN,
|
|
|
930fb9 |
+#define RTM_DELCHAIN RTM_DELCHAIN
|
|
|
930fb9 |
+ RTM_GETCHAIN,
|
|
|
930fb9 |
+#define RTM_GETCHAIN RTM_GETCHAIN
|
|
|
930fb9 |
+
|
|
|
930fb9 |
__RTM_MAX,
|
|
|
930fb9 |
#define RTM_MAX (((__RTM_MAX + 3) & ~3) - 1)
|
|
|
930fb9 |
};
|
|
|
930fb9 |
diff --git a/include/uapi/linux/tcp.h b/include/uapi/linux/tcp.h
|
|
|
930fb9 |
index 2e766cf..6ec7766 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/tcp.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/tcp.h
|
|
|
930fb9 |
@@ -127,6 +127,10 @@ enum {
|
|
|
930fb9 |
|
|
|
930fb9 |
#define TCP_CM_INQ TCP_INQ
|
|
|
930fb9 |
|
|
|
930fb9 |
+#define TCP_REPAIR_ON 1
|
|
|
930fb9 |
+#define TCP_REPAIR_OFF 0
|
|
|
930fb9 |
+#define TCP_REPAIR_OFF_NO_WP -1 /* Turn off without window probes */
|
|
|
930fb9 |
+
|
|
|
930fb9 |
struct tcp_repair_opt {
|
|
|
930fb9 |
__u32 opt_code;
|
|
|
930fb9 |
__u32 opt_val;
|
|
|
930fb9 |
@@ -231,6 +235,11 @@ struct tcp_info {
|
|
|
930fb9 |
|
|
|
930fb9 |
__u32 tcpi_delivered;
|
|
|
930fb9 |
__u32 tcpi_delivered_ce;
|
|
|
930fb9 |
+
|
|
|
930fb9 |
+ __u64 tcpi_bytes_sent; /* RFC4898 tcpEStatsPerfHCDataOctetsOut */
|
|
|
930fb9 |
+ __u64 tcpi_bytes_retrans; /* RFC4898 tcpEStatsPerfOctetsRetrans */
|
|
|
930fb9 |
+ __u32 tcpi_dsack_dups; /* RFC4898 tcpEStatsStackDSACKDups */
|
|
|
930fb9 |
+ __u32 tcpi_reord_seen; /* reordering events seen */
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
/* netlink attributes types for SCM_TIMESTAMPING_OPT_STATS */
|
|
|
930fb9 |
@@ -253,7 +262,10 @@ enum {
|
|
|
930fb9 |
TCP_NLA_SND_SSTHRESH, /* Slow start size threshold */
|
|
|
930fb9 |
TCP_NLA_DELIVERED, /* Data pkts delivered incl. out-of-order */
|
|
|
930fb9 |
TCP_NLA_DELIVERED_CE, /* Like above but only ones w/ CE marks */
|
|
|
930fb9 |
-
|
|
|
930fb9 |
+ TCP_NLA_BYTES_SENT, /* Data bytes sent including retransmission */
|
|
|
930fb9 |
+ TCP_NLA_BYTES_RETRANS, /* Data bytes retransmitted */
|
|
|
930fb9 |
+ TCP_NLA_DSACK_DUPS, /* DSACK blocks received */
|
|
|
930fb9 |
+ TCP_NLA_REORD_SEEN, /* reordering events seen */
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
/* for TCP_MD5SIG socket option */
|
|
|
930fb9 |
diff --git a/include/uapi/linux/xfrm.h b/include/uapi/linux/xfrm.h
|
|
|
930fb9 |
index 93fb192..5cdda9d 100644
|
|
|
930fb9 |
--- a/include/uapi/linux/xfrm.h
|
|
|
930fb9 |
+++ b/include/uapi/linux/xfrm.h
|
|
|
930fb9 |
@@ -305,9 +305,12 @@ enum xfrm_attr_type_t {
|
|
|
930fb9 |
XFRMA_ADDRESS_FILTER, /* struct xfrm_address_filter */
|
|
|
930fb9 |
XFRMA_PAD,
|
|
|
930fb9 |
XFRMA_OFFLOAD_DEV, /* struct xfrm_state_offload */
|
|
|
930fb9 |
- XFRMA_OUTPUT_MARK, /* __u32 */
|
|
|
930fb9 |
+ XFRMA_SET_MARK, /* __u32 */
|
|
|
930fb9 |
+ XFRMA_SET_MARK_MASK, /* __u32 */
|
|
|
930fb9 |
+ XFRMA_IF_ID, /* __u32 */
|
|
|
930fb9 |
__XFRMA_MAX
|
|
|
930fb9 |
|
|
|
930fb9 |
+#define XFRMA_OUTPUT_MARK XFRMA_SET_MARK /* Compatibility */
|
|
|
930fb9 |
#define XFRMA_MAX (__XFRMA_MAX - 1)
|
|
|
930fb9 |
};
|
|
|
930fb9 |
|
|
|
930fb9 |
--
|
|
|
930fb9 |
1.8.3.1
|
|
|
930fb9 |
|