0001
0002
0003
0004
0005
0006 test_LAG_cleanup()
0007 {
0008 local driver=$1
0009 local mode=$2
0010 local ucaddr="02:00:00:12:34:56"
0011 local addr6="fe80::78:9abc/64"
0012 local mcaddr="33:33:ff:78:9a:bc"
0013 local name
0014
0015 ip link add dummy1 type dummy
0016 ip link add dummy2 type dummy
0017 if [ "$driver" = "bonding" ]; then
0018 name="bond1"
0019 ip link add "$name" up type bond mode "$mode"
0020 ip link set dev dummy1 master "$name"
0021 ip link set dev dummy2 master "$name"
0022 elif [ "$driver" = "team" ]; then
0023 name="team0"
0024 teamd -d -c '
0025 {
0026 "device": "'"$name"'",
0027 "runner": {
0028 "name": "'"$mode"'"
0029 },
0030 "ports": {
0031 "dummy1":
0032 {},
0033 "dummy2":
0034 {}
0035 }
0036 }
0037 '
0038 ip link set dev "$name" up
0039 else
0040 check_err 1
0041 log_test test_LAG_cleanup ": unknown driver \"$driver\""
0042 return
0043 fi
0044
0045
0046 ip link add mv0 link "$name" up address "$ucaddr" type macvlan
0047
0048 ip address add "$addr6" dev "$name"
0049 ip link set dev "$name" down
0050 ip link del "$name"
0051
0052 not grep_bridge_fdb "$ucaddr" bridge fdb show >/dev/null
0053 check_err $? "macvlan unicast address still present on a slave"
0054
0055 not grep_bridge_fdb "$mcaddr" bridge fdb show >/dev/null
0056 check_err $? "IPv6 solicited-node multicast mac address still present on a slave"
0057
0058 cleanup
0059
0060 log_test "$driver cleanup mode $mode"
0061 }