WIP FPC-III support
[linux/fpc-iii.git] / tools / testing / selftests / net / forwarding / router_bridge.sh
blobebc596a272f7c3c294f1d5ad50dc71b79e2d31eb
1 #!/bin/bash
2 # SPDX-License-Identifier: GPL-2.0
4 ALL_TESTS="
5 ping_ipv4
6 ping_ipv6
8 NUM_NETIFS=4
9 source lib.sh
11 h1_create()
13 simple_if_init $h1 192.0.2.1/28 2001:db8:1::1/64
14 ip -4 route add 192.0.2.128/28 vrf v$h1 nexthop via 192.0.2.2
15 ip -6 route add 2001:db8:2::/64 vrf v$h1 nexthop via 2001:db8:1::2
18 h1_destroy()
20 ip -6 route del 2001:db8:2::/64 vrf v$h1
21 ip -4 route del 192.0.2.128/28 vrf v$h1
22 simple_if_fini $h1 192.0.2.1/28 2001:db8:1::1/64
25 h2_create()
27 simple_if_init $h2 192.0.2.130/28 2001:db8:2::2/64
28 ip -4 route add 192.0.2.0/28 vrf v$h2 nexthop via 192.0.2.129
29 ip -6 route add 2001:db8:1::/64 vrf v$h2 nexthop via 2001:db8:2::1
32 h2_destroy()
34 ip -6 route del 2001:db8:1::/64 vrf v$h2
35 ip -4 route del 192.0.2.0/28 vrf v$h2
36 simple_if_fini $h2 192.0.2.130/28 2001:db8:2::2/64
39 router_create()
41 ip link add name br1 type bridge vlan_filtering 1
42 ip link set dev br1 up
44 ip link set dev $swp1 master br1
45 ip link set dev $swp1 up
46 __addr_add_del br1 add 192.0.2.2/28 2001:db8:1::2/64
48 ip link set dev $swp2 up
49 __addr_add_del $swp2 add 192.0.2.129/28 2001:db8:2::1/64
52 router_destroy()
54 __addr_add_del $swp2 del 192.0.2.129/28 2001:db8:2::1/64
55 ip link set dev $swp2 down
57 __addr_add_del br1 del 192.0.2.2/28 2001:db8:1::2/64
58 ip link set dev $swp1 down
59 ip link set dev $swp1 nomaster
61 ip link del dev br1
64 setup_prepare()
66 h1=${NETIFS[p1]}
67 swp1=${NETIFS[p2]}
69 swp2=${NETIFS[p3]}
70 h2=${NETIFS[p4]}
72 vrf_prepare
74 h1_create
75 h2_create
77 router_create
79 forwarding_enable
82 cleanup()
84 pre_cleanup
86 forwarding_restore
88 router_destroy
90 h2_destroy
91 h1_destroy
93 vrf_cleanup
96 ping_ipv4()
98 ping_test $h1 192.0.2.130
101 ping_ipv6()
103 ping6_test $h1 2001:db8:2::2
106 trap cleanup EXIT
108 setup_prepare
109 setup_wait
111 tests_run
113 exit $EXIT_STATUS