]> git.ipfire.org Git - thirdparty/iproute2.git/commitdiff
update headers (post 4.4 merge window)
authorStephen Hemminger <stephen@networkplumber.org>
Mon, 18 Jan 2016 17:40:13 +0000 (09:40 -0800)
committerStephen Hemminger <stephen@networkplumber.org>
Mon, 18 Jan 2016 17:40:13 +0000 (09:40 -0800)
include/linux/bpf.h
include/linux/pkt_sched.h

index 39e7f33c34200c41b91f87528e3c04c90bf4ced2..f970f9db841e7a7f553400004ae40d75a228a39a 100644 (file)
@@ -273,6 +273,25 @@ enum bpf_func_id {
        __BPF_FUNC_MAX_ID,
 };
 
+/* All flags used by eBPF helper functions, placed here. */
+
+/* BPF_FUNC_skb_store_bytes flags. */
+#define BPF_F_RECOMPUTE_CSUM           (1ULL << 0)
+
+/* BPF_FUNC_l3_csum_replace and BPF_FUNC_l4_csum_replace flags.
+ * First 4 bits are for passing the header field size.
+ */
+#define BPF_F_HDR_FIELD_MASK           0xfULL
+
+/* BPF_FUNC_l4_csum_replace flags. */
+#define BPF_F_PSEUDO_HDR               (1ULL << 4)
+
+/* BPF_FUNC_clone_redirect and BPF_FUNC_redirect flags. */
+#define BPF_F_INGRESS                  (1ULL << 0)
+
+/* BPF_FUNC_skb_set_tunnel_key and BPF_FUNC_skb_get_tunnel_key flags. */
+#define BPF_F_TUNINFO_IPV6             (1ULL << 0)
+
 /* user accessible mirror of in-kernel sk_buff.
  * new fields can only be added to the end of this structure
  */
@@ -296,7 +315,12 @@ struct __sk_buff {
 
 struct bpf_tunnel_key {
        __u32 tunnel_id;
-       __u32 remote_ipv4;
+       union {
+               __u32 remote_ipv4;
+               __u32 remote_ipv6[4];
+       };
+       __u8 tunnel_tos;
+       __u8 tunnel_ttl;
 };
 
 #endif /* __LINUX_BPF_H__ */
index 8d2530daca9f084c7c033952a57a8f3eb52062b2..8cb18b44968ea5fa49872a934093f28b128604a4 100644 (file)
@@ -72,6 +72,10 @@ struct tc_estimator {
 #define TC_H_UNSPEC    (0U)
 #define TC_H_ROOT      (0xFFFFFFFFU)
 #define TC_H_INGRESS    (0xFFFFFFF1U)
+#define TC_H_CLSACT    TC_H_INGRESS
+
+#define TC_H_MIN_INGRESS       0xFFF2U
+#define TC_H_MIN_EGRESS                0xFFF3U
 
 /* Need to corrospond to iproute2 tc/tc_core.h "enum link_layer" */
 enum tc_link_layer {