Commit 1e5abfb3 authored by Petr Machata's avatar Petr Machata Committed by David S. Miller
Browse files

selftests: forwarding: vxlan_bridge_1d: Add an ECN encap test



Test that ECN bits in the VXLAN envelope are correctly deduced from the
overlay packet.

Signed-off-by: default avatarPetr Machata <petrm@mellanox.com>
Signed-off-by: default avatarIdo Schimmel <idosch@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent d417ecf5
Loading
Loading
Loading
Loading
+26 −0
Original line number Diff line number Diff line
@@ -70,6 +70,7 @@ export VXPORT
	test_unicast
	test_ttl
	test_tos
	test_ecn_encap
	reapply_config
	ping_ipv4
	test_flood
@@ -521,6 +522,31 @@ test_tos()
	log_test "VXLAN: envelope TOS inheritance"
}

__test_ecn_encap()
{
	local q=$1; shift
	local tos=$1; shift

	RET=0

	tc filter add dev v1 egress pref 77 prot ip \
		flower ip_tos $tos action pass
	sleep 1
	vxlan_ping_test $h1 192.0.2.3 "-Q $q" v1 egress 77 10
	tc filter del dev v1 egress pref 77 prot ip

	log_test "VXLAN: ECN encap: $q->$tos"
}

test_ecn_encap()
{
	# In accordance with INET_ECN_encapsulate()
	__test_ecn_encap 0x00 0x00
	__test_ecn_encap 0x01 0x01
	__test_ecn_encap 0x02 0x02
	__test_ecn_encap 0x03 0x02
}

test_all()
{
	echo "Running tests with UDP port $VXPORT"