123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #!/bin/bash
- # SPDX-License-Identifier: GPL-2.0
- ALL_TESTS="sticky"
- NUM_NETIFS=4
- TEST_MAC=de:ad:be:ef:13:37
- source lib.sh
- switch_create()
- {
- ip link add dev br0 type bridge
- ip link set dev $swp1 master br0
- ip link set dev $swp2 master br0
- ip link set dev br0 up
- ip link set dev $h1 up
- ip link set dev $swp1 up
- ip link set dev $h2 up
- ip link set dev $swp2 up
- }
- switch_destroy()
- {
- ip link set dev $swp2 down
- ip link set dev $h2 down
- ip link set dev $swp1 down
- ip link set dev $h1 down
- ip link del dev br0
- }
- setup_prepare()
- {
- h1=${NETIFS[p1]}
- swp1=${NETIFS[p2]}
- h2=${NETIFS[p3]}
- swp2=${NETIFS[p4]}
- switch_create
- }
- cleanup()
- {
- pre_cleanup
- switch_destroy
- }
- sticky()
- {
- bridge fdb add $TEST_MAC dev $swp1 master static sticky
- check_err $? "Could not add fdb entry"
- bridge fdb del $TEST_MAC dev $swp1 vlan 1 master static sticky
- $MZ $h2 -c 1 -a $TEST_MAC -t arp "request" -q
- bridge -j fdb show br br0 brport $swp1\
- | jq -e ".[] | select(.mac == \"$TEST_MAC\")" &> /dev/null
- check_err $? "Did not find FDB record when should"
- log_test "Sticky fdb entry"
- }
- trap cleanup EXIT
- setup_prepare
- setup_wait
- tests_run
- exit $EXIT_STATUS
|