samples/bpf: add gre sequence number test.
authorWilliam Tu <u9012063@gmail.com>
Thu, 1 Mar 2018 21:49:58 +0000 (13:49 -0800)
committerDavid S. Miller <davem@davemloft.net>
Sun, 4 Mar 2018 23:35:02 +0000 (18:35 -0500)
The patch adds tests for GRE sequence number
support for metadata mode tunnel.

Signed-off-by: William Tu <u9012063@gmail.com>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
samples/bpf/tcbpf2_kern.c
samples/bpf/test_tunnel_bpf.sh

index efdc16d195ff6e889f66104c60003a9801843831..9a8db7bd6db4899591835ebfb4dffc32b1bb876b 100644 (file)
@@ -52,7 +52,8 @@ int _gre_set_tunnel(struct __sk_buff *skb)
        key.tunnel_tos = 0;
        key.tunnel_ttl = 64;
 
-       ret = bpf_skb_set_tunnel_key(skb, &key, sizeof(key), BPF_F_ZERO_CSUM_TX);
+       ret = bpf_skb_set_tunnel_key(skb, &key, sizeof(key),
+                                    BPF_F_ZERO_CSUM_TX | BPF_F_SEQ_NUMBER);
        if (ret < 0) {
                ERROR(ret);
                return TC_ACT_SHOT;
@@ -92,7 +93,8 @@ int _ip6gretap_set_tunnel(struct __sk_buff *skb)
        key.tunnel_label = 0xabcde;
 
        ret = bpf_skb_set_tunnel_key(skb, &key, sizeof(key),
-                                    BPF_F_TUNINFO_IPV6 | BPF_F_ZERO_CSUM_TX);
+                                    BPF_F_TUNINFO_IPV6 | BPF_F_ZERO_CSUM_TX |
+                                    BPF_F_SEQ_NUMBER);
        if (ret < 0) {
                ERROR(ret);
                return TC_ACT_SHOT;
index 43ce049996eeb5b4d81394705861a3f11715d3b4..c265863ccdf924df375eab36230292df47d36f42 100755 (executable)
@@ -23,7 +23,8 @@ function config_device {
 function add_gre_tunnel {
        # in namespace
        ip netns exec at_ns0 \
-               ip link add dev $DEV_NS type $TYPE key 2 local 172.16.1.100 remote 172.16.1.200
+        ip link add dev $DEV_NS type $TYPE seq key 2 \
+               local 172.16.1.100 remote 172.16.1.200
        ip netns exec at_ns0 ip link set dev $DEV_NS up
        ip netns exec at_ns0 ip addr add dev $DEV_NS 10.1.1.100/24
 
@@ -43,7 +44,7 @@ function add_ip6gretap_tunnel {
 
        # in namespace
        ip netns exec at_ns0 \
-               ip link add dev $DEV_NS type $TYPE flowlabel 0xbcdef key 2 \
+               ip link add dev $DEV_NS type $TYPE seq flowlabel 0xbcdef key 2 \
                local ::11 remote ::22
 
        ip netns exec at_ns0 ip addr add dev $DEV_NS 10.1.1.100/24