Commit 4d8610ee authored by Nikolay Aleksandrov's avatar Nikolay Aleksandrov Committed by Jakub Kicinski

selftests: net: bridge: add vlan mcast_querier_interval tests

Add tests which change the new per-vlan mcast_querier_interval and
verify that it is taken into account when an outside querier is present.

TEST: Vlan mcast_querier_interval global option default value       [ OK ]
TEST: Vlan 10 mcast_querier_interval option changed to 100          [ OK ]
TEST: Vlan 10 mcast_querier_interval expire after outside query     [ OK ]
Signed-off-by: default avatarNikolay Aleksandrov <nikolay@nvidia.com>
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent a45fe974
...@@ -2,7 +2,8 @@ ...@@ -2,7 +2,8 @@
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
ALL_TESTS="vlmc_control_test vlmc_querier_test vlmc_igmp_mld_version_test \ ALL_TESTS="vlmc_control_test vlmc_querier_test vlmc_igmp_mld_version_test \
vlmc_last_member_test vlmc_startup_query_test vlmc_membership_test" vlmc_last_member_test vlmc_startup_query_test vlmc_membership_test \
vlmc_querier_intvl_test"
NUM_NETIFS=4 NUM_NETIFS=4
CHECK_TC="yes" CHECK_TC="yes"
TEST_GROUP="239.10.10.10" TEST_GROUP="239.10.10.10"
...@@ -384,6 +385,43 @@ vlmc_membership_test() ...@@ -384,6 +385,43 @@ vlmc_membership_test()
bridge vlan global set vid 10 dev br0 mcast_snooping 1 mcast_membership_interval 26000 bridge vlan global set vid 10 dev br0 mcast_snooping 1 mcast_membership_interval 26000
} }
vlmc_querier_intvl_test()
{
RET=0
local goutput=`bridge -j vlan global show`
echo -n $goutput |
jq -e ".[].vlans[] | select(.vlan == 10)" &>/dev/null
check_err $? "Could not find vlan 10's global options"
echo -n $goutput |
jq -e ".[].vlans[] | select(.vlan == 10 and \
.mcast_querier_interval == 25500) " &>/dev/null
check_err $? "Wrong default mcast_querier_interval global vlan option value"
log_test "Vlan mcast_querier_interval global option default value"
RET=0
bridge vlan global set vid 10 dev br0 mcast_snooping 1 mcast_querier_interval 100
check_err $? "Could not set mcast_querier_interval in vlan 10"
log_test "Vlan 10 mcast_querier_interval option changed to 100"
RET=0
ip link add dev br1 type bridge mcast_snooping 1 mcast_querier 1 vlan_filtering 1 \
mcast_vlan_snooping 1
bridge vlan add vid 10 dev br1 self pvid untagged
ip link set dev $h1 master br1
ip link set dev br1 up
bridge vlan add vid 10 dev $h1 master
bridge vlan global set vid 10 dev br1 mcast_snooping 1 mcast_querier 1
sleep 2
ip link del dev br1
ip addr replace 2001:db8:1::1/64 dev $h1
vlmc_check_query igmp 2 $swp1 1 1
check_err $? "Wrong number of IGMPv2 general queries after querier interval"
log_test "Vlan 10 mcast_querier_interval expire after outside query"
bridge vlan global set vid 10 dev br0 mcast_snooping 1 mcast_querier_interval 25500
}
trap cleanup EXIT trap cleanup EXIT
setup_prepare setup_prepare
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment