Эх сурвалжийг харах

samples/bpf: add gre sequence number test.

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>
William Tu 7 жил өмнө
parent
commit
5f280b60d2

+ 4 - 2
samples/bpf/tcbpf2_kern.c

@@ -52,7 +52,8 @@ int _gre_set_tunnel(struct __sk_buff *skb)
 	key.tunnel_tos = 0;
 	key.tunnel_tos = 0;
 	key.tunnel_ttl = 64;
 	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) {
 	if (ret < 0) {
 		ERROR(ret);
 		ERROR(ret);
 		return TC_ACT_SHOT;
 		return TC_ACT_SHOT;
@@ -92,7 +93,8 @@ int _ip6gretap_set_tunnel(struct __sk_buff *skb)
 	key.tunnel_label = 0xabcde;
 	key.tunnel_label = 0xabcde;
 
 
 	ret = bpf_skb_set_tunnel_key(skb, &key, sizeof(key),
 	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) {
 	if (ret < 0) {
 		ERROR(ret);
 		ERROR(ret);
 		return TC_ACT_SHOT;
 		return TC_ACT_SHOT;

+ 3 - 2
samples/bpf/test_tunnel_bpf.sh

@@ -23,7 +23,8 @@ function config_device {
 function add_gre_tunnel {
 function add_gre_tunnel {
 	# in namespace
 	# in namespace
 	ip netns exec at_ns0 \
 	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 link set dev $DEV_NS up
 	ip netns exec at_ns0 ip addr add dev $DEV_NS 10.1.1.100/24
 	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
 	# in namespace
 	ip netns exec at_ns0 \
 	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
 		local ::11 remote ::22
 
 
 	ip netns exec at_ns0 ip addr add dev $DEV_NS 10.1.1.100/24
 	ip netns exec at_ns0 ip addr add dev $DEV_NS 10.1.1.100/24