Commit f9c87590 authored by Ido Schimmel's avatar Ido Schimmel Committed by Jakub Kicinski
Browse files

selftests: fib_rule_tests: Add VRF match tests



Add tests for FIB rules that match on iif / oif being a VRF device. Test
both good and bad flows.

With previous patch ("net: fib_rules: Fix iif / oif matching on L3
master device"):

 # ./fib_rule_tests.sh
 [...]
 Tests passed: 328
 Tests failed:   0

Without it:

 # ./fib_rule_tests.sh
 [...]
 Tests passed: 324
 Tests failed:   4

Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
Acked-by: default avatarDavid Ahern <dsahern@kernel.org>
Link: https://patch.msgid.link/20250414172022.242991-3-idosch@nvidia.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 2d300ce0
Loading
Loading
Loading
Loading
+34 −0
Original line number Diff line number Diff line
@@ -359,6 +359,23 @@ fib_rule6_test()
			"$getnomatch" "iif flowlabel masked redirect to table" \
			"iif flowlabel masked no redirect to table"
	fi

	$IP link show dev $DEV | grep -q vrf0
	if [ $? -eq 0 ]; then
		match="oif vrf0"
		getmatch="oif $DEV"
		getnomatch="oif lo"
		fib_rule6_test_match_n_redirect "$match" "$getmatch" \
			"$getnomatch" "VRF oif redirect to table" \
			"VRF oif no redirect to table"

		match="from $SRC_IP6 iif vrf0"
		getmatch="from $SRC_IP6 iif $DEV"
		getnomatch="from $SRC_IP6 iif lo"
		fib_rule6_test_match_n_redirect "$match" "$getmatch" \
			"$getnomatch" "VRF iif redirect to table" \
			"VRF iif no redirect to table"
	fi
}

fib_rule6_vrf_test()
@@ -635,6 +652,23 @@ fib_rule4_test()
			"$getnomatch" "iif dscp masked redirect to table" \
			"iif dscp masked no redirect to table"
	fi

	$IP link show dev $DEV | grep -q vrf0
	if [ $? -eq 0 ]; then
		match="oif vrf0"
		getmatch="oif $DEV"
		getnomatch="oif lo"
		fib_rule4_test_match_n_redirect "$match" "$getmatch" \
			"$getnomatch" "VRF oif redirect to table" \
			"VRF oif no redirect to table"

		match="from $SRC_IP iif vrf0"
		getmatch="from $SRC_IP iif $DEV"
		getnomatch="from $SRC_IP iif lo"
		fib_rule4_test_match_n_redirect "$match" "$getmatch" \
			"$getnomatch" "VRF iif redirect to table" \
			"VRF iif no redirect to table"
	fi
}

fib_rule4_vrf_test()