src/net: new test, also drop lo and use same interfaces as in figure

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg
2023-04-20 21:14:54 +02:00
committed by Tobias Waldekranz
parent a2fbc9e2f8
commit 0f7d931541
+40 -17
View File
@@ -8,15 +8,13 @@ export NET_DIR
gensh()
{
cat <<-EOF >"$1"
#!/bin/sh
echo "Running \$0 ..."
EOF
chmod +x "$1"
}
check()
{
if ./net; then
if ./net -v; then
printf "\n[\033[1;32m OK \033[0m] Checking %s\n" "$1"
return 0
fi
@@ -25,44 +23,46 @@ check()
return 1
}
echo "Verify that all leaves and dependencies are"
echo "evaluated first:"
echo "Verify leaves and dependencies are evaluated first:"
echo ""
echo " vlan1"
echo " ______/____"
echo " [____br0____]"
echo " / / \\ \\"
echo "lo eth0 eth1 eth2 eth3 lag0"
echo " eth0 eth1 eth2 eth3 lag0"
echo " / \\"
echo " eth4 eth5"
printf "_______________________________________________\n\n"
printf "___________________________________________________\n\n"
mkdir -p $NET_DIR/0
echo 0 > $NET_DIR/next
mkdir -p $NET_DIR/0/lo/deps
gensh $NET_DIR/0/lo/ip.init
mkdir -p $NET_DIR/0/eth0/deps
mkdir -p $NET_DIR/0/eth1/deps
mkdir -p $NET_DIR/0/eth2/deps
mkdir -p $NET_DIR/0/eth3/deps
mkdir -p $NET_DIR/0/eth4/deps
mkdir -p $NET_DIR/0/eth5/deps
gensh $NET_DIR/0/eth0/ip.init
gensh $NET_DIR/0/eth1/ip.init
gensh $NET_DIR/0/eth2/ip.init
gensh $NET_DIR/0/eth3/ip.init
gensh $NET_DIR/0/eth4/ip.init
gensh $NET_DIR/0/eth5/ip.init
mkdir -p $NET_DIR/0/lag0/deps
ln -sf ../../eth3 $NET_DIR/0/lag0/deps/
ln -sf ../../eth4 $NET_DIR/0/lag0/deps/
ln -sf ../../eth5 $NET_DIR/0/lag0/deps/
gensh $NET_DIR/0/lag0/lag.init
gensh $NET_DIR/0/lag0/ip.init
mkdir -p $NET_DIR/0/br0/deps
ln -sf ../../eth1 $NET_DIR/0/br0/deps/
ln -sf ../../eth2 $NET_DIR/0/br0/deps/
ln -sf ../../eth3 $NET_DIR/0/br0/deps/
ln -sf ../../lag0 $NET_DIR/0/br0/deps/
gensh $NET_DIR/0/br0/bridge.init
gensh $NET_DIR/0/br0/ip.init
mkdir -p $NET_DIR/0/vlan1/deps
@@ -70,32 +70,55 @@ ln -sf ../../br0 $NET_DIR/0/vlan1/deps/
gensh $NET_DIR/0/vlan1/ip.init
check "initial startup, gen 0"
cat $NET_DIR/0/rdeps
printf "_______________________________________________\n\n"
printf "___________________________________________________\n\n"
mkdir -p $NET_DIR/1
mkdir -p $NET_DIR/1/lo/deps
mkdir -p $NET_DIR/1/eth0/deps
mkdir -p $NET_DIR/1/eth1/deps
mkdir -p $NET_DIR/1/eth2/deps
mkdir -p $NET_DIR/1/eth3/deps
mkdir -p $NET_DIR/1/eth4/deps
mkdir -p $NET_DIR/1/eth5/deps
mkdir -p $NET_DIR/1/lag0/deps
ln -sf ../../eth4 $NET_DIR/1/lag0/deps/
ln -sf ../../eth5 $NET_DIR/1/lag0/deps/
mkdir -p $NET_DIR/1/br0/deps
ln -sf ../../eth1 $NET_DIR/1/br0/deps/
ln -sf ../../eth2 $NET_DIR/1/br0/deps/
ln -sf ../../eth3 $NET_DIR/1/br0/deps/
ln -sf ../../eth4 $NET_DIR/1/br0/deps/
mkdir -p $NET_DIR/1/vlan1/deps
ln -sf ../../br0 $NET_DIR/1/vlan1/deps/
gensh $NET_DIR/0/eth3/ip.exit
gensh $NET_DIR/1/eth3/ip.init
gensh $NET_DIR/0/eth4/ip.exit
gensh $NET_DIR/1/eth4/ip.init
echo 1 > $NET_DIR/next
check "move eth3 from lag0 to br0"
check "move eth4 from lag0 to br0"
cat $NET_DIR/1/rdeps
printf "___________________________________________________\n\n"
mkdir -p $NET_DIR/2
mkdir -p $NET_DIR/2/eth0/deps
mkdir -p $NET_DIR/2/eth1/deps
mkdir -p $NET_DIR/2/eth2/deps
mkdir -p $NET_DIR/2/eth3/deps
mkdir -p $NET_DIR/2/eth4/deps
mkdir -p $NET_DIR/2/eth5/deps
mkdir -p $NET_DIR/2/lag0/deps
ln -sf ../../eth5 $NET_DIR/2/lag0/deps/
gensh $NET_DIR/1/vlan1/ip.exit
gensh $NET_DIR/1/br0/ip.exit
echo 2 > $NET_DIR/next
check "delete vlan1 and br0"
cat $NET_DIR/2/rdeps
exit 0