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

selftests: router_bridge: Add tests to remove and add PVID



This test relies on PVID being configured on the bridge itself. Thus when
it is deconfigured, the system should lose the ability to forward traffic.
Later when it is added again, the ability to forward traffic should be
regained. Add tests to exercise these configuration changes and verify
results.

Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 5f44a714
Loading
Loading
Loading
Loading
+50 −0
Original line number Diff line number Diff line
#!/bin/bash
# SPDX-License-Identifier: GPL-2.0

# +------------------------+                           +----------------------+
# | H1 (vrf)               |                           |             H2 (vrf) |
# |    + $h1               |                           |  + $h2               |
# |    | 192.0.2.1/28      |                           |  | 192.0.2.130/28    |
# |    | 2001:db8:1::1/64  |                           |  | 2001:db8:2::2/64  |
# |    |                   |                           |  |                   |
# +----|-------------------+                           +--|-------------------+
#      |                                                  |
# +----|--------------------------------------------------|-------------------+
# | SW |                                                  |                   |
# | +--|-----------------------------+                    + $swp2             |
# | |  + $swp1      BR1 (802.1q)     |                      192.0.2.129/28    |
# | |               192.0.2.2/28     |                      2001:db8:2::1/64  |
# | |               2001:db8:1::1/64 |                                        |
# | |                                |                                        |
# | +--------------------------------+                                        |
# +---------------------------------------------------------------------------+

ALL_TESTS="
	ping_ipv4
	ping_ipv6
	config_remove_pvid
	ping_ipv4_fails
	ping_ipv6_fails
	config_add_pvid
	ping_ipv4
	ping_ipv6
"
NUM_NETIFS=4
source lib.sh
@@ -62,6 +86,22 @@ router_destroy()
	ip link del dev br1
}

config_remove_pvid()
{
	log_info "Remove PVID from the bridge"

	bridge vlan add dev br1 vid 1 self
	sleep 2
}

config_add_pvid()
{
	log_info "Add PVID to the bridge"

	bridge vlan add dev br1 vid 1 self pvid untagged
	sleep 2
}

setup_prepare()
{
	h1=${NETIFS[p1]}
@@ -104,6 +144,16 @@ ping_ipv6()
	ping6_test $h1 2001:db8:2::2
}

ping_ipv4_fails()
{
	ping_test_fails $h1 192.0.2.130
}

ping_ipv6_fails()
{
	ping6_test_fails $h1 2001:db8:2::2
}

trap cleanup EXIT

setup_prepare