@@ -120,7 +120,7 @@ log_subsection()
120120
121121run_cmd ()
122122{
123- local cmd=" $* "
123+ local cmd=" $1 "
124124 local out
125125 local rc
126126
@@ -145,7 +145,7 @@ get_linklocal()
145145 local pfx
146146 local addr
147147
148- addr=$( ${pfx} ip -6 -br addr show dev ${dev} | \
148+ addr=$( ${pfx} ${IP} -6 -br addr show dev ${dev} | \
149149 awk ' {
150150 for (i = 3; i <= NF; ++i) {
151151 if ($i ~ /^fe80/)
@@ -173,58 +173,48 @@ setup()
173173
174174 set -e
175175
176- # create namespace
177- setup_ns PEER_NS
176+ # create namespaces
177+ setup_ns ns1
178+ IP=" ip -netns $ns1 "
179+ setup_ns ns2
178180
179181 # add vrf table
180- ip li add ${VRF} type vrf table ${VRF_TABLE}
181- ip li set ${VRF} up
182- ip ro add table ${VRF_TABLE} unreachable default metric 8192
183- ip -6 ro add table ${VRF_TABLE} unreachable default metric 8192
182+ ${IP} li add ${VRF} type vrf table ${VRF_TABLE}
183+ ${IP} li set ${VRF} up
184+ ${IP} ro add table ${VRF_TABLE} unreachable default metric 8192
185+ ${IP} -6 ro add table ${VRF_TABLE} unreachable default metric 8192
184186
185187 # create test interfaces
186- ip li add ${NETIFS[p1]} type veth peer name ${NETIFS[p2]}
187- ip li add ${NETIFS[p3]} type veth peer name ${NETIFS[p4]}
188- ip li add ${NETIFS[p5]} type veth peer name ${NETIFS[p6]}
189- ip li add ${NETIFS[p7]} type veth peer name ${NETIFS[p8]}
188+ ${IP} li add ${NETIFS[p1]} type veth peer name ${NETIFS[p2]}
189+ ${IP} li add ${NETIFS[p3]} type veth peer name ${NETIFS[p4]}
190+ ${IP} li add ${NETIFS[p5]} type veth peer name ${NETIFS[p6]}
191+ ${IP} li add ${NETIFS[p7]} type veth peer name ${NETIFS[p8]}
190192
191193 # enslave vrf interfaces
192194 for n in 5 7; do
193- ip li set ${NETIFS[p${n}]} vrf ${VRF}
195+ ${IP} li set ${NETIFS[p${n}]} vrf ${VRF}
194196 done
195197
196198 # add addresses
197199 for n in 1 3 5 7; do
198- ip li set ${NETIFS[p${n}]} up
199- ip addr add ${V4ADDRS[p${n}]} /24 dev ${NETIFS[p${n}]}
200- ip addr add ${V6ADDRS[p${n}]} /64 dev ${NETIFS[p${n}]} nodad
200+ ${IP} li set ${NETIFS[p${n}]} up
201+ ${IP} addr add ${V4ADDRS[p${n}]} /24 dev ${NETIFS[p${n}]}
202+ ${IP} addr add ${V6ADDRS[p${n}]} /64 dev ${NETIFS[p${n}]} nodad
201203 done
202204
203205 # move peer interfaces to namespace and add addresses
204206 for n in 2 4 6 8; do
205- ip li set ${NETIFS[p${n}]} netns ${PEER_NS } up
206- ip -netns ${PEER_NS} addr add ${V4ADDRS[p${n}]} /24 dev ${NETIFS[p${n}]}
207- ip -netns ${PEER_NS} addr add ${V6ADDRS[p${n}]} /64 dev ${NETIFS[p${n}]} nodad
207+ ${IP} li set ${NETIFS[p${n}]} netns ${ns2 } up
208+ ip -netns $ns2 addr add ${V4ADDRS[p${n}]} /24 dev ${NETIFS[p${n}]}
209+ ip -netns $ns2 addr add ${V6ADDRS[p${n}]} /64 dev ${NETIFS[p${n}]} nodad
208210 done
209211
210- ip -6 ro add default via ${V6ADDRS[p3]/:: [0-9]/:: 64}
211- ip -6 ro add table ${VRF_TABLE} default via ${V6ADDRS[p7]/:: [0-9]/:: 64}
212+ ${IP} -6 ro add default via ${V6ADDRS[p3]/:: [0-9]/:: 64}
213+ ${IP} -6 ro add table ${VRF_TABLE} default via ${V6ADDRS[p7]/:: [0-9]/:: 64}
212214
213215 set +e
214216}
215217
216- cleanup ()
217- {
218- # make sure we start from a clean slate
219- cleanup_ns ${PEER_NS} 2> /dev/null
220- for n in 1 3 5 7; do
221- ip link del ${NETIFS[p${n}]} 2> /dev/null
222- done
223- ip link del ${VRF} 2> /dev/null
224- ip ro flush table ${VRF_TABLE}
225- ip -6 ro flush table ${VRF_TABLE}
226- }
227-
228218# ###############################################################################
229219# IPv4 tests
230220#
@@ -241,7 +231,7 @@ run_ip()
241231 # dev arg may be empty
242232 [ -n " ${dev} " ] && dev=" dev ${dev} "
243233
244- run_cmd ip ro add table " ${table} " " ${prefix} " /32 via " ${gw} " " ${dev} " onlink
234+ run_cmd " ${IP} ro add table ${table} ${prefix} /32 via ${gw} ${dev} onlink"
245235 log_test $? ${exp_rc} " ${desc} "
246236}
247237
@@ -257,8 +247,8 @@ run_ip_mpath()
257247 # dev arg may be empty
258248 [ -n " ${dev} " ] && dev=" dev ${dev} "
259249
260- run_cmd ip ro add table " ${table} " " ${prefix} " /32 \
261- nexthop via ${nh1} nexthop via ${nh2}
250+ run_cmd " ${IP} ro add table ${table} ${prefix} /32 \
251+ nexthop via ${nh1} nexthop via ${nh2} "
262252 log_test $? ${exp_rc} " ${desc} "
263253}
264254
@@ -339,7 +329,7 @@ run_ip6()
339329 # dev arg may be empty
340330 [ -n " ${dev} " ] && dev=" dev ${dev} "
341331
342- run_cmd ip -6 ro add table " ${table} " " ${prefix} " /128 via " ${gw} " " ${dev} " onlink
332+ run_cmd " ${IP} -6 ro add table ${table} ${prefix} /128 via ${gw} ${dev} onlink"
343333 log_test $? ${exp_rc} " ${desc} "
344334}
345335
@@ -353,8 +343,8 @@ run_ip6_mpath()
353343 local exp_rc=" $6 "
354344 local desc=" $7 "
355345
356- run_cmd ip -6 ro add table " ${table} " " ${prefix} " /128 " ${opts} " \
357- nexthop via ${nh1} nexthop via ${nh2}
346+ run_cmd " ${IP} -6 ro add table ${table} ${prefix} /128 ${opts} \
347+ nexthop via ${nh1} nexthop via ${nh2} "
358348 log_test $? ${exp_rc} " ${desc} "
359349}
360350
491481 esac
492482done
493483
494- cleanup
495484setup
496485run_onlink_tests
497- cleanup
486+ cleanup_ns ${ns1} ${ns2}
498487
499488if [ " $TESTS " != " none" ]; then
500489 printf " \nTests passed: %3d\n" ${nsuccess}
0 commit comments