t_lagg.sh revision 1.3 1 1.3 yamaguch # $NetBSD: t_lagg.sh,v 1.3 2021/10/19 07:57:15 yamaguchi Exp $
2 1.1 yamaguch #
3 1.1 yamaguch # Copyright (c) 2021 Internet Initiative Japan Inc.
4 1.1 yamaguch # All rights reserved.
5 1.1 yamaguch #
6 1.1 yamaguch # Redistribution and use in source and binary forms, with or without
7 1.1 yamaguch # modification, are permitted provided that the following conditions
8 1.1 yamaguch # are met:
9 1.1 yamaguch # 1. Redistributions of source code must retain the above copyright
10 1.1 yamaguch # notice, this list of conditions and the following disclaimer.
11 1.1 yamaguch # 2. Redistributions in binary form must reproduce the above copyright
12 1.1 yamaguch # notice, this list of conditions and the following disclaimer in the
13 1.1 yamaguch # documentation and/or other materials provided with the distribution.
14 1.1 yamaguch #
15 1.1 yamaguch # THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
16 1.1 yamaguch # ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
17 1.1 yamaguch # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
18 1.1 yamaguch # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
19 1.1 yamaguch # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20 1.1 yamaguch # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21 1.1 yamaguch # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 1.1 yamaguch # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 1.1 yamaguch # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24 1.1 yamaguch # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25 1.1 yamaguch # POSSIBILITY OF SUCH DAMAGE.
26 1.1 yamaguch #
27 1.1 yamaguch
28 1.1 yamaguch SOCK_HOST0=unix://commsock0
29 1.1 yamaguch SOCK_HOST1=unix://commsock1
30 1.1 yamaguch SOCK_HOST2=unix://commsock2
31 1.1 yamaguch BUS0=bus0
32 1.1 yamaguch BUS1=bus1
33 1.1 yamaguch BUS2=bus2
34 1.1 yamaguch IP4ADDR0=192.168.0.1
35 1.1 yamaguch IP4ADDR1=192.168.0.2
36 1.1 yamaguch IP4ADDR2=192.168.1.1
37 1.1 yamaguch IP4ADDR3=192.168.1.2
38 1.1 yamaguch IP6ADDR0=fc00::1
39 1.1 yamaguch IP6ADDR1=fc00::2
40 1.1 yamaguch IP6ADDR2=fc00:1::1
41 1.1 yamaguch IP6ADDR3=fc00:1::2
42 1.1 yamaguch WAITTIME=20
43 1.1 yamaguch
44 1.1 yamaguch DEBUG=${DEBUG:-false}
45 1.1 yamaguch
46 1.1 yamaguch wait_state()
47 1.1 yamaguch {
48 1.1 yamaguch local state=$1
49 1.1 yamaguch local if_lagg=$2
50 1.1 yamaguch local if_port=$3
51 1.1 yamaguch
52 1.1 yamaguch local n=$WAITTIME
53 1.1 yamaguch local cmd_grep="grep -q ${state}"
54 1.1 yamaguch
55 1.1 yamaguch if [ x"$if_port" != x"" ]; then
56 1.1 yamaguch cmd_grep="grep $if_port | $cmd_grep"
57 1.1 yamaguch fi
58 1.1 yamaguch
59 1.1 yamaguch for i in $(seq $n); do
60 1.1 yamaguch rump.ifconfig $if_lagg | eval $cmd_grep
61 1.1 yamaguch if [ $? = 0 ] ; then
62 1.1 yamaguch $DEBUG && echo "wait for $i seconds."
63 1.1 yamaguch return 0
64 1.1 yamaguch fi
65 1.1 yamaguch
66 1.1 yamaguch sleep 1
67 1.1 yamaguch done
68 1.1 yamaguch
69 1.1 yamaguch $DEBUG && rump.ifconfig -v $if_lagg
70 1.1 yamaguch atf_fail "Couldn't be ${state} for $n seconds."
71 1.1 yamaguch }
72 1.1 yamaguch wait_for_distributing()
73 1.1 yamaguch {
74 1.1 yamaguch
75 1.1 yamaguch wait_state "DISTRIBUTING" $*
76 1.1 yamaguch }
77 1.1 yamaguch
78 1.1 yamaguch expected_inactive()
79 1.1 yamaguch {
80 1.1 yamaguch local if_lagg=$1
81 1.1 yamaguch local if_port=$2
82 1.1 yamaguch
83 1.1 yamaguch sleep 3 # wait a little
84 1.1 yamaguch atf_check -s exit:0 -o not-match:"${if_port}.*ACTIVE" \
85 1.1 yamaguch rump.ifconfig ${if_lagg}
86 1.1 yamaguch }
87 1.1 yamaguch
88 1.3 yamaguch setup_l2tp_ipv4tunnel()
89 1.3 yamaguch {
90 1.3 yamaguch local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
91 1.3 yamaguch
92 1.3 yamaguch local a_addr0=10.0.0.1
93 1.3 yamaguch local a_addr1=10.0.0.2
94 1.3 yamaguch local b_addr0=10.0.1.1
95 1.3 yamaguch local b_addr1=10.0.1.2
96 1.3 yamaguch local c_addr0=10.0.2.1
97 1.3 yamaguch local c_addr1=10.0.2.2
98 1.3 yamaguch
99 1.3 yamaguch local a_session0=1001
100 1.3 yamaguch local a_session1=1002
101 1.3 yamaguch local b_session0=1011
102 1.3 yamaguch local b_session1=1012
103 1.3 yamaguch local c_session0=1021
104 1.3 yamaguch local c_session1=1022
105 1.3 yamaguch
106 1.3 yamaguch rump_server_add_iface $SOCK_HOST0 l2tp0
107 1.3 yamaguch rump_server_add_iface $SOCK_HOST0 l2tp1
108 1.3 yamaguch rump_server_add_iface $SOCK_HOST0 l2tp2
109 1.3 yamaguch rump_server_add_iface $SOCK_HOST1 l2tp0
110 1.3 yamaguch rump_server_add_iface $SOCK_HOST1 l2tp1
111 1.3 yamaguch rump_server_add_iface $SOCK_HOST1 l2tp2
112 1.3 yamaguch
113 1.3 yamaguch
114 1.3 yamaguch export RUMP_SERVER=$SOCK_HOST0
115 1.3 yamaguch $atf_ifconfig shmif0 $a_addr0/24
116 1.3 yamaguch $atf_ifconfig l2tp0 tunnel $a_addr0 $a_addr1
117 1.3 yamaguch $atf_ifconfig l2tp0 session $a_session0 $a_session1
118 1.3 yamaguch
119 1.3 yamaguch $atf_ifconfig shmif1 $b_addr0/24
120 1.3 yamaguch $atf_ifconfig l2tp1 tunnel $b_addr0 $b_addr1
121 1.3 yamaguch $atf_ifconfig l2tp1 session $b_session0 $b_session1
122 1.3 yamaguch
123 1.3 yamaguch $atf_ifconfig shmif2 $c_addr0/24
124 1.3 yamaguch $atf_ifconfig l2tp2 tunnel $c_addr0 $c_addr1
125 1.3 yamaguch $atf_ifconfig l2tp2 session $c_session0 $c_session1
126 1.3 yamaguch
127 1.3 yamaguch export RUMP_SERVER=$SOCK_HOST1
128 1.3 yamaguch $atf_ifconfig shmif0 $a_addr1/24
129 1.3 yamaguch $atf_ifconfig l2tp0 tunnel $a_addr1 $a_addr0
130 1.3 yamaguch $atf_ifconfig l2tp0 session $a_session1 $a_session0
131 1.3 yamaguch
132 1.3 yamaguch $atf_ifconfig shmif1 $b_addr1/24
133 1.3 yamaguch $atf_ifconfig l2tp1 tunnel $b_addr1 $b_addr0
134 1.3 yamaguch $atf_ifconfig l2tp1 session $b_session1 $b_session0
135 1.3 yamaguch
136 1.3 yamaguch $atf_ifconfig shmif2 $c_addr1/24
137 1.3 yamaguch $atf_ifconfig l2tp2 tunnel $c_addr1 $c_addr0
138 1.3 yamaguch $atf_ifconfig l2tp2 session $c_session1 $c_session0
139 1.3 yamaguch }
140 1.3 yamaguch
141 1.1 yamaguch atf_test_case lagg_ifconfig cleanup
142 1.1 yamaguch lagg_ifconfig_head()
143 1.1 yamaguch {
144 1.1 yamaguch
145 1.1 yamaguch atf_set "descr" "tests for create, destroy, and ioctl of lagg(4)"
146 1.1 yamaguch atf_set "require.progs" "rump_server"
147 1.1 yamaguch }
148 1.1 yamaguch
149 1.1 yamaguch lagg_ifconfig_body()
150 1.1 yamaguch {
151 1.1 yamaguch local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
152 1.1 yamaguch
153 1.1 yamaguch rump_server_start $SOCK_HOST0 lagg
154 1.1 yamaguch
155 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
156 1.1 yamaguch $atf_ifconfig lagg0 create
157 1.1 yamaguch $atf_ifconfig lagg0 destroy
158 1.1 yamaguch
159 1.1 yamaguch $atf_ifconfig lagg0 create
160 1.1 yamaguch $atf_ifconfig shmif0 create
161 1.1 yamaguch
162 1.1 yamaguch $atf_ifconfig lagg0 laggproto none
163 1.1 yamaguch atf_check -s exit:0 -o match:'laggproto none' \
164 1.1 yamaguch rump.ifconfig lagg0
165 1.1 yamaguch
166 1.1 yamaguch # cannot add a port while protocol is none
167 1.1 yamaguch atf_check -s not-exit:0 -e ignore \
168 1.1 yamaguch rump.ifconfig lagg0 laggport shmif0
169 1.1 yamaguch
170 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp
171 1.1 yamaguch atf_check -s exit:0 -o match:'laggproto lacp' \
172 1.1 yamaguch rump.ifconfig lagg0
173 1.1 yamaguch
174 1.1 yamaguch # add a port and an added port
175 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0
176 1.1 yamaguch atf_check -s not-exit:0 -e ignore \
177 1.1 yamaguch rump.ifconfig lagg0 laggport shmif0
178 1.1 yamaguch
179 1.1 yamaguch # remove an added port and a removed port
180 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif0
181 1.1 yamaguch atf_check -s not-exit:0 -e ignore \
182 1.1 yamaguch rump.ifconfig lagg0 -laggport shmif0
183 1.1 yamaguch
184 1.1 yamaguch # re-add a removed port
185 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0
186 1.1 yamaguch
187 1.1 yamaguch # detach protocol even if the I/F has ports
188 1.1 yamaguch $atf_ifconfig lagg0 laggproto none
189 1.1 yamaguch
190 1.1 yamaguch # destroy the interface while grouping ports
191 1.1 yamaguch $atf_ifconfig lagg0 destroy
192 1.1 yamaguch
193 1.1 yamaguch $atf_ifconfig lagg0 create
194 1.1 yamaguch $atf_ifconfig shmif1 create
195 1.1 yamaguch
196 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp
197 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0
198 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif1
199 1.1 yamaguch
200 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif0
201 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0
202 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif1
203 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif1
204 1.1 yamaguch
205 1.1 yamaguch # destroy a LAGed port
206 1.1 yamaguch atf_check -s exit:0 -o match:shmif0 rump.ifconfig lagg0
207 1.1 yamaguch atf_check -s exit:0 -o match:shmif1 rump.ifconfig lagg0
208 1.1 yamaguch $atf_ifconfig shmif0 destroy
209 1.1 yamaguch $atf_ifconfig shmif1 destroy
210 1.1 yamaguch
211 1.1 yamaguch $atf_ifconfig lagg0 laggproto none
212 1.1 yamaguch atf_check -s exit:0 -o ignore rump.ifconfig lagg0
213 1.1 yamaguch }
214 1.1 yamaguch
215 1.1 yamaguch lagg_ifconfig_cleanup()
216 1.1 yamaguch {
217 1.1 yamaguch $DEBG && dump
218 1.1 yamaguch cleanup
219 1.1 yamaguch }
220 1.1 yamaguch
221 1.1 yamaguch atf_test_case lagg_macaddr cleanup
222 1.1 yamaguch lagg_macaddr_head()
223 1.1 yamaguch {
224 1.1 yamaguch atf_set "descr" "tests for a MAC address to assign to lagg(4)"
225 1.1 yamaguch atf_set "require.progs" "rump_server"
226 1.1 yamaguch }
227 1.1 yamaguch
228 1.1 yamaguch lagg_macaddr_body()
229 1.1 yamaguch {
230 1.1 yamaguch local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
231 1.1 yamaguch
232 1.1 yamaguch rump_server_start $SOCK_HOST0 lagg
233 1.1 yamaguch
234 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
235 1.1 yamaguch $atf_ifconfig lagg0 create
236 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif0 $BUS0
237 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif1 $BUS1
238 1.1 yamaguch
239 1.1 yamaguch maddr=$(get_macaddr $SOCK_HOST0 lagg0)
240 1.1 yamaguch maddr0=$(get_macaddr $SOCK_HOST0 shmif0)
241 1.1 yamaguch maddr1=$(get_macaddr $SOCK_HOST0 shmif1)
242 1.1 yamaguch
243 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp
244 1.1 yamaguch
245 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0
246 1.1 yamaguch atf_check -s exit:0 -o match:$maddr0 rump.ifconfig lagg0
247 1.1 yamaguch
248 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif1
249 1.1 yamaguch atf_check -s exit:0 -o match:$maddr0 rump.ifconfig lagg0
250 1.1 yamaguch atf_check -s exit:0 -o match:$maddr0 rump.ifconfig shmif1
251 1.1 yamaguch
252 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif0
253 1.1 yamaguch atf_check -s exit:0 -o match:$maddr1 rump.ifconfig lagg0
254 1.1 yamaguch atf_check -s exit:0 -o match:$maddr0 rump.ifconfig shmif0
255 1.1 yamaguch
256 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0
257 1.1 yamaguch atf_check -s exit:0 -o match:$maddr1 rump.ifconfig lagg0
258 1.1 yamaguch atf_check -s exit:0 -o match:$maddr1 rump.ifconfig shmif0
259 1.1 yamaguch
260 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif0
261 1.1 yamaguch atf_check -s exit:0 -o match:$maddr0 rump.ifconfig shmif0
262 1.1 yamaguch
263 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif1
264 1.1 yamaguch atf_check -s exit:0 -o match:$maddr rump.ifconfig lagg0
265 1.1 yamaguch }
266 1.1 yamaguch
267 1.1 yamaguch lagg_macaddr_cleanup()
268 1.1 yamaguch {
269 1.1 yamaguch $DEBUG && dump
270 1.1 yamaguch cleanup
271 1.1 yamaguch }
272 1.1 yamaguch
273 1.1 yamaguch atf_test_case lagg_ipv6lla cleanup
274 1.1 yamaguch lagg_ipv6lla_head()
275 1.1 yamaguch {
276 1.1 yamaguch atf_set "descr" "tests for a IPV6 LLA to assign to lagg(4)"
277 1.1 yamaguch atf_set "require.progs" "rump_server"
278 1.1 yamaguch }
279 1.1 yamaguch
280 1.1 yamaguch lagg_ipv6lla_body()
281 1.1 yamaguch {
282 1.1 yamaguch local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
283 1.1 yamaguch
284 1.1 yamaguch rump_server_start $SOCK_HOST0 netinet6 lagg
285 1.1 yamaguch
286 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
287 1.1 yamaguch $atf_ifconfig lagg0 create
288 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif0 $BUS0
289 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif1 $BUS1
290 1.1 yamaguch
291 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp
292 1.1 yamaguch
293 1.1 yamaguch $atf_ifconfig shmif0 up
294 1.1 yamaguch atf_check -s exit:0 -o match:'inet6 fe80:' rump.ifconfig shmif0
295 1.1 yamaguch
296 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp laggport shmif0
297 1.1 yamaguch atf_check -s exit:0 -o not-match:'inet6 fe80:' rump.ifconfig shmif0
298 1.1 yamaguch
299 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif1
300 1.1 yamaguch $atf_ifconfig shmif1 up
301 1.1 yamaguch atf_check -s exit:0 -o not-match:'inet6 fe80:' rump.ifconfig shmif1
302 1.1 yamaguch
303 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif0
304 1.1 yamaguch atf_check -s exit:0 -o match:'inet6 fe80:' rump.ifconfig shmif0
305 1.1 yamaguch
306 1.1 yamaguch $atf_ifconfig shmif1 down
307 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif1
308 1.1 yamaguch atf_check -s exit:0 -o not-match:'inet fe80:' rump.ifconfig shmif1
309 1.1 yamaguch }
310 1.1 yamaguch
311 1.1 yamaguch lagg_ipv6lla_cleanup()
312 1.1 yamaguch {
313 1.1 yamaguch $DEBUG && dump
314 1.1 yamaguch cleanup
315 1.1 yamaguch }
316 1.1 yamaguch
317 1.1 yamaguch atf_test_case lagg_lacp_basic cleanup
318 1.1 yamaguch lagg_lacp_basic_head()
319 1.1 yamaguch {
320 1.1 yamaguch
321 1.1 yamaguch atf_set "descr" "tests for LACP basic functions"
322 1.1 yamaguch atf_set "require.progs" "rump_server"
323 1.1 yamaguch }
324 1.1 yamaguch
325 1.1 yamaguch lagg_lacp_basic_body()
326 1.1 yamaguch {
327 1.1 yamaguch local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
328 1.1 yamaguch
329 1.1 yamaguch rump_server_start $SOCK_HOST0 lagg
330 1.1 yamaguch rump_server_start $SOCK_HOST1 lagg
331 1.1 yamaguch rump_server_start $SOCK_HOST2 lagg
332 1.1 yamaguch
333 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
334 1.1 yamaguch
335 1.1 yamaguch # added running interface
336 1.1 yamaguch $atf_ifconfig shmif0 create
337 1.1 yamaguch $atf_ifconfig shmif0 linkstr $BUS0
338 1.1 yamaguch
339 1.1 yamaguch $atf_ifconfig shmif1 create
340 1.1 yamaguch $atf_ifconfig shmif1 linkstr $BUS1
341 1.1 yamaguch
342 1.1 yamaguch $atf_ifconfig lagg0 create
343 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp
344 1.1 yamaguch
345 1.1 yamaguch $atf_ifconfig shmif0 up
346 1.1 yamaguch $atf_ifconfig shmif1 up
347 1.1 yamaguch $atf_ifconfig lagg0 up
348 1.1 yamaguch
349 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0
350 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif1
351 1.1 yamaguch $atf_ifconfig -w 10
352 1.1 yamaguch
353 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif0
354 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif1
355 1.1 yamaguch $atf_ifconfig lagg0 down
356 1.1 yamaguch
357 1.1 yamaguch # add the same interfaces again
358 1.1 yamaguch $atf_ifconfig lagg0 up
359 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0
360 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif1
361 1.1 yamaguch
362 1.1 yamaguch # detach and re-attach protocol
363 1.1 yamaguch $atf_ifconfig lagg0 laggproto none
364 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp \
365 1.1 yamaguch laggport shmif0 laggport shmif1
366 1.1 yamaguch
367 1.1 yamaguch $atf_ifconfig lagg0 -laggport shmif0 -laggport shmif1
368 1.1 yamaguch $atf_ifconfig lagg0 destroy
369 1.1 yamaguch $atf_ifconfig shmif0 destroy
370 1.1 yamaguch $atf_ifconfig shmif1 destroy
371 1.1 yamaguch
372 1.1 yamaguch # tests for a loopback condition
373 1.1 yamaguch $atf_ifconfig shmif0 create
374 1.1 yamaguch $atf_ifconfig shmif0 linkstr $BUS0
375 1.1 yamaguch $atf_ifconfig shmif1 create
376 1.1 yamaguch $atf_ifconfig shmif1 linkstr $BUS0
377 1.1 yamaguch $atf_ifconfig lagg0 create
378 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp \
379 1.1 yamaguch laggport shmif0 laggport shmif1
380 1.1 yamaguch $atf_ifconfig shmif0 up
381 1.1 yamaguch $atf_ifconfig shmif1 up
382 1.1 yamaguch $atf_ifconfig lagg0 up
383 1.1 yamaguch
384 1.1 yamaguch expected_inactive lagg0
385 1.1 yamaguch
386 1.1 yamaguch $atf_ifconfig shmif0 down
387 1.1 yamaguch $atf_ifconfig shmif0 destroy
388 1.1 yamaguch $atf_ifconfig shmif1 down
389 1.1 yamaguch $atf_ifconfig shmif1 destroy
390 1.1 yamaguch $atf_ifconfig lagg0 down
391 1.1 yamaguch $atf_ifconfig lagg0 destroy
392 1.1 yamaguch
393 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
394 1.1 yamaguch $atf_ifconfig shmif0 create
395 1.1 yamaguch $atf_ifconfig shmif0 linkstr $BUS0
396 1.1 yamaguch $atf_ifconfig shmif0 up
397 1.1 yamaguch
398 1.1 yamaguch $atf_ifconfig shmif1 create
399 1.1 yamaguch $atf_ifconfig shmif1 linkstr $BUS1
400 1.1 yamaguch $atf_ifconfig shmif1 up
401 1.1 yamaguch
402 1.1 yamaguch $atf_ifconfig shmif2 create
403 1.1 yamaguch $atf_ifconfig shmif2 linkstr $BUS2
404 1.1 yamaguch $atf_ifconfig shmif2 up
405 1.1 yamaguch
406 1.1 yamaguch $atf_ifconfig lagg0 create
407 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp laggport shmif0 \
408 1.1 yamaguch laggport shmif1 laggport shmif2
409 1.1 yamaguch $atf_ifconfig lagg0 up
410 1.1 yamaguch
411 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
412 1.1 yamaguch $atf_ifconfig shmif0 create
413 1.1 yamaguch $atf_ifconfig shmif0 linkstr $BUS0
414 1.1 yamaguch $atf_ifconfig shmif0 up
415 1.1 yamaguch
416 1.1 yamaguch $atf_ifconfig shmif1 create
417 1.1 yamaguch $atf_ifconfig shmif1 linkstr $BUS1
418 1.1 yamaguch $atf_ifconfig shmif1 up
419 1.1 yamaguch
420 1.1 yamaguch $atf_ifconfig lagg0 create
421 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp
422 1.1 yamaguch $atf_ifconfig lagg1 create
423 1.1 yamaguch $atf_ifconfig lagg1 laggproto lacp
424 1.1 yamaguch
425 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0
426 1.1 yamaguch $atf_ifconfig lagg0 up
427 1.1 yamaguch wait_for_distributing lagg0 shmif0
428 1.1 yamaguch
429 1.1 yamaguch $atf_ifconfig lagg1 laggport shmif1
430 1.1 yamaguch $atf_ifconfig lagg1 up
431 1.1 yamaguch
432 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST2
433 1.1 yamaguch $atf_ifconfig shmif0 create
434 1.1 yamaguch $atf_ifconfig shmif0 linkstr $BUS2
435 1.1 yamaguch $atf_ifconfig shmif0 up
436 1.1 yamaguch
437 1.1 yamaguch $atf_ifconfig lagg0 create
438 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp laggport shmif0
439 1.1 yamaguch $atf_ifconfig lagg0 up
440 1.1 yamaguch
441 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
442 1.1 yamaguch wait_for_distributing lagg0 shmif0
443 1.1 yamaguch expected_inactive lagg0 shmif1
444 1.1 yamaguch expected_inactive lagg0 shmif2
445 1.1 yamaguch }
446 1.1 yamaguch
447 1.1 yamaguch lagg_lacp_basic_cleanup()
448 1.1 yamaguch {
449 1.1 yamaguch
450 1.1 yamaguch $DEBUG && dump
451 1.1 yamaguch cleanup
452 1.1 yamaguch }
453 1.1 yamaguch
454 1.1 yamaguch lagg_lacp_ping()
455 1.1 yamaguch {
456 1.1 yamaguch local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
457 1.1 yamaguch
458 1.1 yamaguch local af=$1
459 1.3 yamaguch local l2proto=$2
460 1.1 yamaguch local atf_ping="atf_check -s exit:0 -o ignore rump.ping -c 1"
461 1.1 yamaguch local ping=rump.ping
462 1.1 yamaguch local rumplib=""
463 1.1 yamaguch local pfx=24
464 1.1 yamaguch local addr_host0=$IP4ADDR0
465 1.1 yamaguch local addr_host1=$IP4ADDR1
466 1.1 yamaguch
467 1.1 yamaguch case $af in
468 1.1 yamaguch "inet")
469 1.1 yamaguch # do nothing
470 1.1 yamaguch ;;
471 1.1 yamaguch "inet6")
472 1.1 yamaguch atf_ping="atf_check -s exit:0 -o ignore rump.ping6 -c 1"
473 1.1 yamaguch rumplib="netinet6"
474 1.1 yamaguch pfx=64
475 1.1 yamaguch addr_host0=$IP6ADDR0
476 1.1 yamaguch addr_host1=$IP6ADDR1
477 1.1 yamaguch ;;
478 1.1 yamaguch esac
479 1.1 yamaguch
480 1.3 yamaguch case $l2proto in
481 1.3 yamaguch "ether")
482 1.3 yamaguch iface0=shmif0
483 1.3 yamaguch iface1=shmif1
484 1.3 yamaguch iface2=shmif2
485 1.3 yamaguch ;;
486 1.3 yamaguch "l2tp")
487 1.3 yamaguch rumplib="$rumplib l2tp"
488 1.3 yamaguch iface0=l2tp0
489 1.3 yamaguch iface1=l2tp1
490 1.3 yamaguch iface2=l2tp2
491 1.3 yamaguch ;;
492 1.3 yamaguch esac
493 1.3 yamaguch
494 1.1 yamaguch rump_server_start $SOCK_HOST0 lagg $rumplib
495 1.1 yamaguch rump_server_start $SOCK_HOST1 lagg $rumplib
496 1.1 yamaguch
497 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif0 $BUS0
498 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif1 $BUS1
499 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif2 $BUS2
500 1.1 yamaguch
501 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif0 $BUS0
502 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif1 $BUS1
503 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif2 $BUS2
504 1.1 yamaguch
505 1.3 yamaguch if [ x"$l2proto" = x"l2tp" ];then
506 1.3 yamaguch setup_l2tp_ipv4tunnel
507 1.3 yamaguch fi
508 1.3 yamaguch
509 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
510 1.1 yamaguch $atf_ifconfig lagg0 create
511 1.3 yamaguch $atf_ifconfig lagg0 laggproto lacp laggport $iface0
512 1.1 yamaguch $atf_ifconfig lagg0 $af $addr_host0/$pfx
513 1.3 yamaguch $atf_ifconfig $iface0 up
514 1.1 yamaguch $atf_ifconfig lagg0 up
515 1.1 yamaguch
516 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
517 1.1 yamaguch $atf_ifconfig lagg0 create
518 1.3 yamaguch $atf_ifconfig lagg0 laggproto lacp laggport $iface0
519 1.1 yamaguch $atf_ifconfig lagg0 $af $addr_host1/$pfx
520 1.3 yamaguch $atf_ifconfig $iface0 up
521 1.1 yamaguch $atf_ifconfig lagg0 up
522 1.1 yamaguch
523 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
524 1.1 yamaguch wait_for_distributing lagg0
525 1.1 yamaguch $atf_ifconfig -w 10
526 1.1 yamaguch
527 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
528 1.1 yamaguch wait_for_distributing lagg0
529 1.1 yamaguch $atf_ifconfig -w 10
530 1.1 yamaguch
531 1.1 yamaguch $atf_ping $addr_host0
532 1.1 yamaguch
533 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
534 1.3 yamaguch $atf_ifconfig $iface1 up
535 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface1 laggport $iface2
536 1.3 yamaguch $atf_ifconfig $iface2 up
537 1.1 yamaguch
538 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
539 1.3 yamaguch $atf_ifconfig $iface1 up
540 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface1 laggport $iface2
541 1.3 yamaguch $atf_ifconfig $iface2 up
542 1.1 yamaguch
543 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
544 1.3 yamaguch wait_for_distributing lagg0 $iface1
545 1.3 yamaguch wait_for_distributing lagg0 $iface2
546 1.1 yamaguch
547 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
548 1.3 yamaguch wait_for_distributing lagg0 $iface1
549 1.3 yamaguch wait_for_distributing lagg0 $iface2
550 1.1 yamaguch
551 1.1 yamaguch $atf_ping $addr_host0
552 1.1 yamaguch }
553 1.1 yamaguch
554 1.1 yamaguch atf_test_case lagg_lacp_ipv4 cleanup
555 1.1 yamaguch lagg_lacp_ipv4_head()
556 1.1 yamaguch {
557 1.1 yamaguch
558 1.1 yamaguch atf_set "descr" "tests for IPv4 with LACP"
559 1.1 yamaguch atf_set "require.progs" "rump_server"
560 1.1 yamaguch }
561 1.1 yamaguch
562 1.1 yamaguch lagg_lacp_ipv4_body()
563 1.1 yamaguch {
564 1.1 yamaguch
565 1.3 yamaguch lagg_lacp_ping "inet" "ether"
566 1.1 yamaguch }
567 1.1 yamaguch
568 1.1 yamaguch lagg_lacp_ipv4_cleanup()
569 1.1 yamaguch {
570 1.1 yamaguch
571 1.1 yamaguch $DEBUG && dump
572 1.1 yamaguch cleanup
573 1.1 yamaguch }
574 1.1 yamaguch
575 1.2 yamaguch atf_test_case lagg_lacp_ipv6 cleanup
576 1.1 yamaguch lagg_lacp_ipv6_head()
577 1.1 yamaguch {
578 1.1 yamaguch
579 1.1 yamaguch atf_set "descr" "tests for IPv6 with LACP"
580 1.1 yamaguch atf_set "require.progs" "rump_server"
581 1.1 yamaguch }
582 1.1 yamaguch
583 1.1 yamaguch lagg_lacp_ipv6_body()
584 1.1 yamaguch {
585 1.1 yamaguch
586 1.3 yamaguch lagg_lacp_ping "inet6" "ether"
587 1.1 yamaguch }
588 1.1 yamaguch
589 1.1 yamaguch lagg_lacp_ipv6_cleanup()
590 1.1 yamaguch {
591 1.1 yamaguch
592 1.1 yamaguch $DEBUG && dump
593 1.1 yamaguch cleanup
594 1.1 yamaguch }
595 1.1 yamaguch
596 1.3 yamaguch atf_test_case lagg_lacp_l2tp_ipv4 cleanup
597 1.3 yamaguch lagg_lacp_l2tp_ipv4_head()
598 1.3 yamaguch {
599 1.3 yamaguch
600 1.3 yamaguch atf_set "descr" "tests for LACP over l2tp by using IPv4"
601 1.3 yamaguch atf_set "require.progs" "rump_server"
602 1.3 yamaguch }
603 1.3 yamaguch
604 1.3 yamaguch lagg_lacp_l2tp_ipv4_body()
605 1.3 yamaguch {
606 1.3 yamaguch
607 1.3 yamaguch lagg_lacp_ping "inet" "l2tp"
608 1.3 yamaguch }
609 1.3 yamaguch
610 1.3 yamaguch lagg_lacp_l2tp_ipv4_cleanup()
611 1.3 yamaguch {
612 1.3 yamaguch
613 1.3 yamaguch $DEBUG && dump
614 1.3 yamaguch cleanup
615 1.3 yamaguch }
616 1.3 yamaguch
617 1.3 yamaguch atf_test_case lagg_lacp_l2tp_ipv6 cleanup
618 1.3 yamaguch lagg_lacp_l2tp_ipv6_head()
619 1.3 yamaguch {
620 1.3 yamaguch
621 1.3 yamaguch atf_set "descr" "tests for LACP over l2tp using IPv6"
622 1.3 yamaguch atf_set "require.progs" "rump_server"
623 1.3 yamaguch }
624 1.3 yamaguch
625 1.3 yamaguch lagg_lacp_l2tp_ipv6_body()
626 1.3 yamaguch {
627 1.3 yamaguch
628 1.3 yamaguch lagg_lacp_ping "inet6" "l2tp"
629 1.3 yamaguch }
630 1.3 yamaguch
631 1.3 yamaguch lagg_lacp_l2tp_ipv6_cleanup()
632 1.3 yamaguch {
633 1.3 yamaguch
634 1.3 yamaguch $DEBUG && dump
635 1.3 yamaguch cleanup
636 1.3 yamaguch }
637 1.3 yamaguch
638 1.1 yamaguch lagg_lacp_vlan()
639 1.1 yamaguch {
640 1.1 yamaguch local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
641 1.1 yamaguch
642 1.1 yamaguch local af=$1
643 1.1 yamaguch local atf_ping="atf_check -s exit:0 -o ignore rump.ping -c 1"
644 1.1 yamaguch local rumplib="vlan"
645 1.1 yamaguch local pfx=24
646 1.1 yamaguch local vlan0_addr_host0=$IP4ADDR0
647 1.1 yamaguch local host0addr0=$IP4ADDR0
648 1.1 yamaguch local host1addr0=$IP4ADDR1
649 1.1 yamaguch local host0addr1=$IP4ADDR2
650 1.1 yamaguch local host1addr1=$IP4ADDR3
651 1.1 yamaguch
652 1.1 yamaguch case $af in
653 1.1 yamaguch "inet")
654 1.1 yamaguch # do nothing
655 1.1 yamaguch ;;
656 1.1 yamaguch "inet6")
657 1.1 yamaguch atf_ping="atf_check -s exit:0 -o ignore rump.ping6 -c 1"
658 1.1 yamaguch rumplib="netinet6"
659 1.1 yamaguch pfx=64
660 1.1 yamaguch host0addr0=$IP6ADDR0
661 1.1 yamaguch host1addr0=$IP6ADDR1
662 1.1 yamaguch host0addr1=$IP6ADDR2
663 1.1 yamaguch host1addr1=$IP6ADDR3
664 1.1 yamaguch ;;
665 1.1 yamaguch esac
666 1.1 yamaguch
667 1.1 yamaguch rump_server_start $SOCK_HOST0 lagg $rumplib
668 1.1 yamaguch rump_server_start $SOCK_HOST1 lagg $rumplib
669 1.1 yamaguch
670 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif0 $BUS0
671 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif1 $BUS1
672 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif2 $BUS2
673 1.1 yamaguch
674 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif0 $BUS0
675 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif1 $BUS1
676 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif2 $BUS2
677 1.1 yamaguch
678 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
679 1.1 yamaguch $atf_ifconfig lagg0 create
680 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp laggport shmif0
681 1.1 yamaguch $atf_ifconfig shmif0 up
682 1.1 yamaguch $atf_ifconfig lagg0 up
683 1.1 yamaguch
684 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
685 1.1 yamaguch $atf_ifconfig lagg0 create
686 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp laggport shmif0
687 1.1 yamaguch $atf_ifconfig shmif0 up
688 1.1 yamaguch $atf_ifconfig lagg0 up
689 1.1 yamaguch
690 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
691 1.1 yamaguch wait_for_distributing lagg0
692 1.1 yamaguch
693 1.1 yamaguch $atf_ifconfig vlan0 create
694 1.1 yamaguch $atf_ifconfig vlan0 vlan 10 vlanif lagg0
695 1.1 yamaguch $atf_ifconfig vlan0 $af $host0addr0/$pfx
696 1.1 yamaguch $atf_ifconfig vlan0 up
697 1.1 yamaguch
698 1.1 yamaguch $atf_ifconfig vlan1 create
699 1.1 yamaguch $atf_ifconfig vlan1 vlan 11 vlanif lagg0
700 1.1 yamaguch $atf_ifconfig vlan1 $af $host0addr1/$pfx
701 1.1 yamaguch $atf_ifconfig vlan1 up
702 1.1 yamaguch
703 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
704 1.1 yamaguch $atf_ifconfig vlan0 create
705 1.1 yamaguch $atf_ifconfig vlan0 vlan 10 vlanif lagg0
706 1.1 yamaguch $atf_ifconfig vlan0 $af $host1addr0/$pfx
707 1.1 yamaguch $atf_ifconfig vlan0 up
708 1.1 yamaguch
709 1.1 yamaguch $atf_ifconfig vlan1 create
710 1.1 yamaguch $atf_ifconfig vlan1 vlan 11 vlanif lagg0
711 1.1 yamaguch $atf_ifconfig vlan1 $af $host1addr1/$pfx
712 1.1 yamaguch $atf_ifconfig vlan1 up
713 1.1 yamaguch
714 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
715 1.1 yamaguch $atf_ifconfig -w 10
716 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
717 1.1 yamaguch $atf_ifconfig -w 10
718 1.1 yamaguch
719 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
720 1.1 yamaguch $atf_ping $host1addr0
721 1.1 yamaguch $atf_ping $host1addr1
722 1.1 yamaguch
723 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif1
724 1.1 yamaguch $atf_ifconfig shmif1 up
725 1.1 yamaguch
726 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
727 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif1
728 1.1 yamaguch $atf_ifconfig shmif1 up
729 1.1 yamaguch
730 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
731 1.1 yamaguch wait_for_distributing lagg0 shmif1
732 1.1 yamaguch
733 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
734 1.1 yamaguch wait_for_distributing lagg0 shmif1
735 1.1 yamaguch
736 1.1 yamaguch $atf_ping $host0addr0
737 1.1 yamaguch $atf_ping $host0addr1
738 1.1 yamaguch }
739 1.1 yamaguch
740 1.1 yamaguch atf_test_case lagg_lacp_vlan_ipv4 cleanup
741 1.1 yamaguch lagg_lacp_vlan_ipv4_head()
742 1.1 yamaguch {
743 1.1 yamaguch
744 1.1 yamaguch atf_set "descr" "tests for IPv4 VLAN frames over LACP LAG"
745 1.1 yamaguch atf_set "require.progs" "rump_server"
746 1.1 yamaguch }
747 1.1 yamaguch
748 1.1 yamaguch lagg_lacp_vlan_ipv4_body()
749 1.1 yamaguch {
750 1.1 yamaguch
751 1.1 yamaguch lagg_lacp_vlan "inet"
752 1.1 yamaguch }
753 1.1 yamaguch
754 1.1 yamaguch lagg_lacp_vlan_ipv4_cleanup()
755 1.1 yamaguch {
756 1.1 yamaguch $DEBUG && dump
757 1.1 yamaguch cleanup
758 1.1 yamaguch }
759 1.1 yamaguch
760 1.1 yamaguch atf_test_case lagg_lacp_vlan_ipv6 cleanup
761 1.1 yamaguch lagg_lacp_vlan_ipv6_head()
762 1.1 yamaguch {
763 1.1 yamaguch
764 1.1 yamaguch atf_set "descr" "tests for IPv6 VLAN frames over LACP LAG"
765 1.1 yamaguch atf_set "require.progs" "rump_server"
766 1.1 yamaguch }
767 1.1 yamaguch
768 1.1 yamaguch lagg_lacp_vlan_ipv6_body()
769 1.1 yamaguch {
770 1.1 yamaguch
771 1.1 yamaguch lagg_lacp_vlan "inet"
772 1.1 yamaguch }
773 1.1 yamaguch
774 1.1 yamaguch lagg_lacp_vlan_ipv6_cleanup()
775 1.1 yamaguch {
776 1.1 yamaguch $DEBUG && dump
777 1.1 yamaguch cleanup
778 1.1 yamaguch }
779 1.1 yamaguch
780 1.1 yamaguch atf_test_case lagg_lacp_portpri cleanup
781 1.1 yamaguch lagg_lacp_portpri_head()
782 1.1 yamaguch {
783 1.1 yamaguch
784 1.1 yamaguch atf_set "descr" "tests for LACP port priority"
785 1.1 yamaguch atf_set "require.progs" "rump_server"
786 1.1 yamaguch }
787 1.1 yamaguch
788 1.1 yamaguch lagg_lacp_portpri_body()
789 1.1 yamaguch {
790 1.1 yamaguch local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
791 1.1 yamaguch
792 1.1 yamaguch rump_server_start $SOCK_HOST0 lagg
793 1.1 yamaguch rump_server_start $SOCK_HOST1 lagg
794 1.1 yamaguch
795 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif0 $BUS0
796 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif1 $BUS1
797 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif2 $BUS2
798 1.1 yamaguch
799 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif0 $BUS0
800 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif1 $BUS1
801 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif2 $BUS2
802 1.1 yamaguch
803 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
804 1.1 yamaguch $atf_ifconfig lagg0 create
805 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp
806 1.1 yamaguch $atf_ifconfig lagg0 lagglacp maxports 2
807 1.1 yamaguch
808 1.1 yamaguch $atf_ifconfig shmif0 up
809 1.1 yamaguch $atf_ifconfig shmif1 up
810 1.1 yamaguch $atf_ifconfig shmif2 up
811 1.1 yamaguch
812 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0 pri 1000
813 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif1 pri 2000
814 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif2 pri 3000
815 1.1 yamaguch $atf_ifconfig lagg0 up
816 1.1 yamaguch
817 1.1 yamaguch atf_check -s exit:0 -o match:'shmif0 pri=1000' rump.ifconfig lagg0
818 1.1 yamaguch atf_check -s exit:0 -o match:'shmif1 pri=2000' rump.ifconfig lagg0
819 1.1 yamaguch atf_check -s exit:0 -o match:'shmif2 pri=3000' rump.ifconfig lagg0
820 1.1 yamaguch
821 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
822 1.1 yamaguch $atf_ifconfig lagg0 create
823 1.1 yamaguch $atf_ifconfig lagg0 laggproto lacp
824 1.1 yamaguch
825 1.1 yamaguch $atf_ifconfig shmif0 up
826 1.1 yamaguch $atf_ifconfig shmif1 up
827 1.1 yamaguch $atf_ifconfig shmif2 up
828 1.1 yamaguch
829 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif0 pri 300
830 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif1 pri 200
831 1.1 yamaguch $atf_ifconfig lagg0 laggport shmif2 pri 100
832 1.1 yamaguch $atf_ifconfig lagg0 up
833 1.1 yamaguch
834 1.1 yamaguch atf_check -s exit:0 -o match:'shmif0 pri=300' rump.ifconfig lagg0
835 1.1 yamaguch atf_check -s exit:0 -o match:'shmif1 pri=200' rump.ifconfig lagg0
836 1.1 yamaguch atf_check -s exit:0 -o match:'shmif2 pri=100' rump.ifconfig lagg0
837 1.1 yamaguch
838 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
839 1.1 yamaguch wait_for_distributing lagg0 shmif0
840 1.1 yamaguch wait_for_distributing lagg0 shmif1
841 1.1 yamaguch wait_state "STANDBY" lagg0 shmif2
842 1.1 yamaguch
843 1.1 yamaguch $atf_ifconfig shmif0 down
844 1.1 yamaguch wait_for_distributing lagg0 shmif2
845 1.1 yamaguch
846 1.1 yamaguch $atf_ifconfig shmif0 up
847 1.1 yamaguch wait_for_distributing lagg0 shmif0
848 1.1 yamaguch
849 1.1 yamaguch $atf_ifconfig lagg0 laggportpri shmif0 5000
850 1.1 yamaguch $atf_ifconfig lagg0 laggportpri shmif1 5000
851 1.1 yamaguch $atf_ifconfig lagg0 laggportpri shmif2 5000
852 1.1 yamaguch
853 1.1 yamaguch atf_check -s exit:0 -o match:'shmif0 pri=5000' rump.ifconfig lagg0
854 1.1 yamaguch atf_check -s exit:0 -o match:'shmif1 pri=5000' rump.ifconfig lagg0
855 1.1 yamaguch atf_check -s exit:0 -o match:'shmif2 pri=5000' rump.ifconfig lagg0
856 1.1 yamaguch
857 1.1 yamaguch wait_state "STANDBY" lagg0 shmif0
858 1.1 yamaguch wait_for_distributing lagg0 shmif1
859 1.1 yamaguch wait_for_distributing lagg0 shmif2
860 1.1 yamaguch }
861 1.1 yamaguch
862 1.1 yamaguch lagg_lacp_portpri_cleanup()
863 1.1 yamaguch {
864 1.1 yamaguch
865 1.1 yamaguch $DEBUG && dump
866 1.1 yamaguch cleanup
867 1.1 yamaguch }
868 1.1 yamaguch
869 1.1 yamaguch lagg_failover()
870 1.1 yamaguch {
871 1.1 yamaguch local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
872 1.1 yamaguch
873 1.1 yamaguch local af=$1
874 1.3 yamaguch local l2proto=$2
875 1.1 yamaguch local ping="rump.ping -c 1"
876 1.1 yamaguch local rumplib=""
877 1.1 yamaguch local pfx=24
878 1.1 yamaguch local addr_host0=$IP4ADDR0
879 1.1 yamaguch local addr_host1=$IP4ADDR1
880 1.1 yamaguch
881 1.1 yamaguch case $af in
882 1.1 yamaguch "inet")
883 1.1 yamaguch # do nothing
884 1.1 yamaguch ;;
885 1.1 yamaguch "inet6")
886 1.1 yamaguch ping="rump.ping6 -c 1"
887 1.1 yamaguch rumplib="netinet6"
888 1.1 yamaguch pfx=64
889 1.1 yamaguch addr_host0=$IP6ADDR0
890 1.1 yamaguch addr_host1=$IP6ADDR1
891 1.1 yamaguch ;;
892 1.1 yamaguch esac
893 1.1 yamaguch
894 1.3 yamaguch case $l2proto in
895 1.3 yamaguch "ether")
896 1.3 yamaguch iface0="shmif0"
897 1.3 yamaguch iface1="shmif1"
898 1.3 yamaguch iface2="shmif2"
899 1.3 yamaguch ;;
900 1.3 yamaguch "l2tp")
901 1.3 yamaguch rumplib="$rumplib l2tp"
902 1.3 yamaguch iface0="l2tp0"
903 1.3 yamaguch iface1="l2tp1"
904 1.3 yamaguch iface2="l2tp2"
905 1.3 yamaguch ;;
906 1.3 yamaguch esac
907 1.3 yamaguch
908 1.1 yamaguch local atf_ping="atf_check -s exit:0 -o ignore ${ping}"
909 1.1 yamaguch
910 1.1 yamaguch rump_server_start $SOCK_HOST0 lagg $rumplib
911 1.1 yamaguch rump_server_start $SOCK_HOST1 lagg $rumplib
912 1.1 yamaguch
913 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif0 $BUS0
914 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif1 $BUS1
915 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif2 $BUS2
916 1.1 yamaguch
917 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif0 $BUS0
918 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif1 $BUS1
919 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif2 $BUS2
920 1.1 yamaguch
921 1.3 yamaguch if [ x"$l2proto" = x"l2tp" ]; then
922 1.3 yamaguch setup_l2tp_ipv4tunnel
923 1.3 yamaguch fi
924 1.3 yamaguch
925 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
926 1.1 yamaguch $atf_ifconfig lagg0 create
927 1.1 yamaguch $atf_ifconfig lagg0 laggproto failover
928 1.1 yamaguch
929 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface0 pri 1000
930 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface1 pri 2000
931 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface2 pri 3000
932 1.1 yamaguch $atf_ifconfig lagg0 $af $addr_host0/$pfx
933 1.1 yamaguch
934 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
935 1.1 yamaguch $atf_ifconfig lagg0 create
936 1.1 yamaguch $atf_ifconfig lagg0 laggproto failover
937 1.1 yamaguch
938 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface0 pri 1000
939 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface1 pri 3000
940 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface2 pri 2000
941 1.1 yamaguch $atf_ifconfig lagg0 $af $addr_host1/$pfx
942 1.1 yamaguch
943 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
944 1.3 yamaguch $atf_ifconfig $iface0 up
945 1.3 yamaguch $atf_ifconfig $iface1 up
946 1.3 yamaguch $atf_ifconfig $iface2 up
947 1.1 yamaguch $atf_ifconfig lagg0 up
948 1.1 yamaguch
949 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
950 1.3 yamaguch $atf_ifconfig $iface0 up
951 1.3 yamaguch $atf_ifconfig $iface1 up
952 1.3 yamaguch $atf_ifconfig $iface2 up
953 1.1 yamaguch $atf_ifconfig lagg0 up
954 1.1 yamaguch
955 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
956 1.1 yamaguch $atf_ifconfig -w 10
957 1.3 yamaguch wait_for_distributing lagg0 $iface0
958 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface0
959 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface1
960 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface2
961 1.1 yamaguch
962 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
963 1.1 yamaguch $atf_ifconfig -w 10
964 1.3 yamaguch wait_for_distributing lagg0 $iface0
965 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface0
966 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface1
967 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface2
968 1.1 yamaguch
969 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
970 1.1 yamaguch $atf_ping $addr_host1
971 1.1 yamaguch
972 1.3 yamaguch $atf_ifconfig $iface0 down
973 1.3 yamaguch wait_for_distributing lagg0 $iface1
974 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface1
975 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface2
976 1.1 yamaguch
977 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
978 1.3 yamaguch $atf_ifconfig $iface0 down
979 1.3 yamaguch wait_for_distributing lagg0 $iface2
980 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface2
981 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface1
982 1.1 yamaguch
983 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
984 1.1 yamaguch $atf_ping $addr_host1
985 1.1 yamaguch
986 1.1 yamaguch $atf_ifconfig lagg0 laggfailover -rx-all
987 1.3 yamaguch atf_check -s exit:0 -o not-match:'$iface2.+COLLECTING' rump.ifconfig lagg0
988 1.1 yamaguch
989 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
990 1.1 yamaguch $atf_ifconfig lagg0 laggfailover -rx-all
991 1.3 yamaguch atf_check -s exit:0 -o not-match:'$iface1.+COLLECTING' rump.ifconfig lagg0
992 1.1 yamaguch
993 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
994 1.1 yamaguch atf_check -s not-exit:0 -o ignore -e ignore $ping -c 1 $addr_host1
995 1.1 yamaguch }
996 1.1 yamaguch
997 1.1 yamaguch atf_test_case lagg_failover_ipv4 cleanup
998 1.1 yamaguch lagg_failover_ipv4_head()
999 1.1 yamaguch {
1000 1.1 yamaguch
1001 1.1 yamaguch atf_set "descr" "tests for failover using IPv4"
1002 1.1 yamaguch atf_set "require.progs" "rump_server"
1003 1.1 yamaguch }
1004 1.1 yamaguch
1005 1.1 yamaguch lagg_failover_ipv4_body()
1006 1.1 yamaguch {
1007 1.1 yamaguch
1008 1.3 yamaguch lagg_failover "inet" "ether"
1009 1.1 yamaguch }
1010 1.1 yamaguch
1011 1.1 yamaguch lagg_failover_ipv4_cleanup()
1012 1.1 yamaguch {
1013 1.1 yamaguch
1014 1.1 yamaguch $DEBUG && dump
1015 1.1 yamaguch cleanup
1016 1.1 yamaguch }
1017 1.1 yamaguch
1018 1.1 yamaguch atf_test_case lagg_failover_ipv6 cleanup
1019 1.1 yamaguch lagg_failover_ipv6_head()
1020 1.1 yamaguch {
1021 1.1 yamaguch
1022 1.1 yamaguch atf_set "descr" "tests for failover using IPv6"
1023 1.1 yamaguch atf_set "require.progs" "rump_server"
1024 1.1 yamaguch }
1025 1.1 yamaguch
1026 1.1 yamaguch lagg_failover_ipv6_body()
1027 1.1 yamaguch {
1028 1.1 yamaguch
1029 1.3 yamaguch lagg_failover "inet6" "ether"
1030 1.1 yamaguch }
1031 1.1 yamaguch
1032 1.1 yamaguch lagg_failover_ipv6_cleanup()
1033 1.1 yamaguch {
1034 1.1 yamaguch
1035 1.1 yamaguch $DEBUG && dump
1036 1.1 yamaguch cleanup
1037 1.1 yamaguch }
1038 1.1 yamaguch
1039 1.3 yamaguch atf_test_case lagg_failover_l2tp_ipv4 cleanup
1040 1.3 yamaguch lagg_failover_l2tp_ipv4_head()
1041 1.3 yamaguch {
1042 1.3 yamaguch
1043 1.3 yamaguch atf_set "descr" "tests for failover over l2tp using IPv4"
1044 1.3 yamaguch atf_set "require.progs" "rump_server"
1045 1.3 yamaguch }
1046 1.3 yamaguch
1047 1.3 yamaguch lagg_failover_l2tp_ipv4_body()
1048 1.3 yamaguch {
1049 1.3 yamaguch
1050 1.3 yamaguch lagg_failover "inet" "l2tp"
1051 1.3 yamaguch }
1052 1.3 yamaguch
1053 1.3 yamaguch lagg_failover_l2tp_ipv4_cleanup()
1054 1.3 yamaguch {
1055 1.3 yamaguch $DEBUG && dump
1056 1.3 yamaguch cleanup
1057 1.3 yamaguch }
1058 1.3 yamaguch
1059 1.3 yamaguch atf_test_case lagg_failover_l2tp_ipv6 cleanup
1060 1.3 yamaguch lagg_failover_l2tp_ipv6_head()
1061 1.3 yamaguch {
1062 1.3 yamaguch
1063 1.3 yamaguch atf_set "descr" "tests for failover over l2tp using IPv6"
1064 1.3 yamaguch atf_set "require.progs" "rump_server"
1065 1.3 yamaguch }
1066 1.3 yamaguch
1067 1.3 yamaguch lagg_failover_l2tp_ipv6_body()
1068 1.3 yamaguch {
1069 1.3 yamaguch
1070 1.3 yamaguch lagg_failover "inet6" "l2tp"
1071 1.3 yamaguch }
1072 1.3 yamaguch
1073 1.3 yamaguch lagg_failover_l2tp_ipv6_cleanup()
1074 1.3 yamaguch {
1075 1.3 yamaguch $DEBUG && dump
1076 1.3 yamaguch cleanup
1077 1.3 yamaguch }
1078 1.3 yamaguch
1079 1.1 yamaguch lagg_loadbalance()
1080 1.1 yamaguch {
1081 1.1 yamaguch local atf_ifconfig="atf_check -s exit:0 rump.ifconfig"
1082 1.1 yamaguch
1083 1.1 yamaguch local af=$1
1084 1.3 yamaguch local l2proto=$2
1085 1.1 yamaguch local ping="rump.ping -c 1"
1086 1.1 yamaguch local rumplib=""
1087 1.1 yamaguch local pfx=24
1088 1.1 yamaguch local addr_host0=$IP4ADDR0
1089 1.1 yamaguch local addr_host1=$IP4ADDR1
1090 1.1 yamaguch
1091 1.1 yamaguch case $af in
1092 1.1 yamaguch "inet")
1093 1.1 yamaguch # do nothing
1094 1.1 yamaguch ;;
1095 1.1 yamaguch "inet6")
1096 1.1 yamaguch ping="rump.ping6 -c 1"
1097 1.1 yamaguch rumplib="netinet6"
1098 1.1 yamaguch pfx=64
1099 1.1 yamaguch addr_host0=$IP6ADDR0
1100 1.1 yamaguch addr_host1=$IP6ADDR1
1101 1.1 yamaguch ;;
1102 1.1 yamaguch esac
1103 1.1 yamaguch
1104 1.3 yamaguch case $l2proto in
1105 1.3 yamaguch "ether")
1106 1.3 yamaguch iface0=shmif0
1107 1.3 yamaguch iface1=shmif1
1108 1.3 yamaguch iface2=shmif2
1109 1.3 yamaguch ;;
1110 1.3 yamaguch "l2tp")
1111 1.3 yamaguch rumplib="$rumplib l2tp"
1112 1.3 yamaguch iface0=l2tp0
1113 1.3 yamaguch iface1=l2tp1
1114 1.3 yamaguch iface2=l2tp2
1115 1.3 yamaguch ;;
1116 1.3 yamaguch esac
1117 1.3 yamaguch
1118 1.1 yamaguch local atf_ping="atf_check -s exit:0 -o ignore ${ping}"
1119 1.1 yamaguch
1120 1.1 yamaguch rump_server_start $SOCK_HOST0 lagg $rumplib
1121 1.1 yamaguch rump_server_start $SOCK_HOST1 lagg $rumplib
1122 1.1 yamaguch
1123 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif0 $BUS0
1124 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif1 $BUS1
1125 1.1 yamaguch rump_server_add_iface $SOCK_HOST0 shmif2 $BUS2
1126 1.1 yamaguch
1127 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif0 $BUS0
1128 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif1 $BUS1
1129 1.1 yamaguch rump_server_add_iface $SOCK_HOST1 shmif2 $BUS2
1130 1.1 yamaguch
1131 1.3 yamaguch if [ x"$l2proto" = x"l2tp" ]; then
1132 1.3 yamaguch setup_l2tp_ipv4tunnel
1133 1.3 yamaguch fi
1134 1.3 yamaguch
1135 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
1136 1.1 yamaguch $atf_ifconfig lagg0 create
1137 1.1 yamaguch $atf_ifconfig lagg0 laggproto loadbalance
1138 1.1 yamaguch
1139 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface0 pri 1000
1140 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface1 pri 2000
1141 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface2 pri 3000
1142 1.1 yamaguch $atf_ifconfig lagg0 $af $addr_host0/$pfx
1143 1.1 yamaguch
1144 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
1145 1.1 yamaguch $atf_ifconfig lagg0 create
1146 1.1 yamaguch $atf_ifconfig lagg0 laggproto loadbalance
1147 1.1 yamaguch
1148 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface0 pri 1000
1149 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface1 pri 3000
1150 1.3 yamaguch $atf_ifconfig lagg0 laggport $iface2 pri 2000
1151 1.1 yamaguch $atf_ifconfig lagg0 $af $addr_host1/$pfx
1152 1.1 yamaguch
1153 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
1154 1.3 yamaguch $atf_ifconfig $iface0 up
1155 1.3 yamaguch $atf_ifconfig $iface1 up
1156 1.3 yamaguch $atf_ifconfig $iface2 up
1157 1.1 yamaguch $atf_ifconfig lagg0 up
1158 1.1 yamaguch
1159 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
1160 1.3 yamaguch $atf_ifconfig $iface0 up
1161 1.3 yamaguch $atf_ifconfig $iface1 up
1162 1.3 yamaguch $atf_ifconfig $iface2 up
1163 1.1 yamaguch $atf_ifconfig lagg0 up
1164 1.1 yamaguch
1165 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
1166 1.1 yamaguch $atf_ifconfig -w 10
1167 1.3 yamaguch wait_for_distributing lagg0 $iface0
1168 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface0
1169 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface1
1170 1.3 yamaguch wait_state "COLLECTING" lagg0 $iface2
1171 1.1 yamaguch
1172 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
1173 1.1 yamaguch $atf_ifconfig -w 10
1174 1.3 yamaguch wait_state "COLLECTING,DISTRIBUTING" lagg0 $iface0
1175 1.3 yamaguch wait_state "COLLECTING,DISTRIBUTING" lagg0 $iface1
1176 1.3 yamaguch wait_state "COLLECTING,DISTRIBUTING" lagg0 $iface2
1177 1.1 yamaguch
1178 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
1179 1.1 yamaguch $atf_ping $addr_host1
1180 1.1 yamaguch
1181 1.3 yamaguch $atf_ifconfig $iface0 down
1182 1.3 yamaguch wait_state "COLLECTING,DISTRIBUTING" lagg0 $iface1
1183 1.3 yamaguch wait_state "COLLECTING,DISTRIBUTING" lagg0 $iface2
1184 1.1 yamaguch
1185 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST1
1186 1.3 yamaguch $atf_ifconfig $iface0 down
1187 1.3 yamaguch wait_state "COLLECTING,DISTRIBUTING" lagg0 $iface1
1188 1.3 yamaguch wait_state "COLLECTING,DISTRIBUTING" lagg0 $iface2
1189 1.1 yamaguch
1190 1.1 yamaguch export RUMP_SERVER=$SOCK_HOST0
1191 1.1 yamaguch $atf_ping $addr_host1
1192 1.1 yamaguch }
1193 1.1 yamaguch
1194 1.1 yamaguch atf_test_case lagg_loadbalance_ipv4 cleanup
1195 1.1 yamaguch lagg_loadbalance_ipv4_head()
1196 1.1 yamaguch {
1197 1.1 yamaguch
1198 1.1 yamaguch atf_set "descr" "tests for loadbalance using IPv4"
1199 1.1 yamaguch atf_set "require.progs" "rump_server"
1200 1.1 yamaguch }
1201 1.1 yamaguch
1202 1.1 yamaguch lagg_loadbalance_ipv4_body()
1203 1.1 yamaguch {
1204 1.1 yamaguch
1205 1.3 yamaguch lagg_loadbalance "inet" "ether"
1206 1.1 yamaguch }
1207 1.1 yamaguch
1208 1.1 yamaguch lagg_loadbalance_ipv4_cleanup()
1209 1.1 yamaguch {
1210 1.1 yamaguch
1211 1.1 yamaguch $DEBUG && dump
1212 1.1 yamaguch cleanup
1213 1.1 yamaguch }
1214 1.1 yamaguch
1215 1.1 yamaguch atf_test_case lagg_loadbalance_ipv6 cleanup
1216 1.1 yamaguch lagg_loadbalance_ipv6_head()
1217 1.1 yamaguch {
1218 1.1 yamaguch
1219 1.1 yamaguch atf_set "descr" "tests for loadbalance using IPv6"
1220 1.1 yamaguch atf_set "require.progs" "rump_server"
1221 1.1 yamaguch }
1222 1.1 yamaguch
1223 1.1 yamaguch lagg_loadbalance_ipv6_body()
1224 1.1 yamaguch {
1225 1.1 yamaguch
1226 1.3 yamaguch lagg_loadbalance "inet6" "ether"
1227 1.1 yamaguch }
1228 1.1 yamaguch
1229 1.1 yamaguch lagg_loadbalance_ipv6_cleanup()
1230 1.1 yamaguch {
1231 1.1 yamaguch
1232 1.1 yamaguch $DEBUG && dump
1233 1.1 yamaguch cleanup
1234 1.1 yamaguch }
1235 1.1 yamaguch
1236 1.3 yamaguch atf_test_case lagg_loadbalance_l2tp_ipv4 cleanup
1237 1.3 yamaguch lagg_loadbalance_l2tp_ipv4_head()
1238 1.3 yamaguch {
1239 1.3 yamaguch
1240 1.3 yamaguch atf_set "descr" "tests for loadbalance over l2tp using IPv4"
1241 1.3 yamaguch atf_set "require.progs" "rump_server"
1242 1.3 yamaguch }
1243 1.3 yamaguch
1244 1.3 yamaguch lagg_loadbalance_l2tp_ipv4_body()
1245 1.3 yamaguch {
1246 1.3 yamaguch
1247 1.3 yamaguch lagg_loadbalance "inet" "l2tp"
1248 1.3 yamaguch }
1249 1.3 yamaguch
1250 1.3 yamaguch lagg_loadbalance_l2tp_ipv4_cleanup()
1251 1.3 yamaguch {
1252 1.3 yamaguch
1253 1.3 yamaguch $DEBUG && dump
1254 1.3 yamaguch cleanup
1255 1.3 yamaguch }
1256 1.3 yamaguch
1257 1.3 yamaguch atf_test_case lagg_loadbalance_l2tp_ipv6 cleanup
1258 1.3 yamaguch lagg_loadbalance_l2tp_ipv4_head()
1259 1.3 yamaguch {
1260 1.3 yamaguch
1261 1.3 yamaguch atf_set "descr" "tests for loadbalance over l2tp using IPv6"
1262 1.3 yamaguch atf_set "require.progs" "rump_server"
1263 1.3 yamaguch }
1264 1.3 yamaguch
1265 1.3 yamaguch lagg_loadbalance_l2tp_ipv6_body()
1266 1.3 yamaguch {
1267 1.3 yamaguch
1268 1.3 yamaguch lagg_loadbalance "inet6" "l2tp"
1269 1.3 yamaguch }
1270 1.3 yamaguch
1271 1.3 yamaguch lagg_loadbalance_l2tp_ipv6_cleanup()
1272 1.3 yamaguch {
1273 1.3 yamaguch
1274 1.3 yamaguch $DEBUG && dump
1275 1.3 yamaguch cleanup
1276 1.3 yamaguch }
1277 1.3 yamaguch
1278 1.1 yamaguch atf_init_test_cases()
1279 1.1 yamaguch {
1280 1.1 yamaguch
1281 1.1 yamaguch atf_add_test_case lagg_ifconfig
1282 1.1 yamaguch atf_add_test_case lagg_macaddr
1283 1.1 yamaguch atf_add_test_case lagg_ipv6lla
1284 1.1 yamaguch atf_add_test_case lagg_lacp_basic
1285 1.1 yamaguch atf_add_test_case lagg_lacp_ipv4
1286 1.1 yamaguch atf_add_test_case lagg_lacp_ipv6
1287 1.3 yamaguch atf_add_test_case lagg_lacp_l2tp_ipv4
1288 1.3 yamaguch atf_add_test_case lagg_lacp_l2tp_ipv6
1289 1.1 yamaguch atf_add_test_case lagg_lacp_vlan_ipv4
1290 1.1 yamaguch atf_add_test_case lagg_lacp_vlan_ipv6
1291 1.1 yamaguch atf_add_test_case lagg_lacp_portpri
1292 1.1 yamaguch atf_add_test_case lagg_failover_ipv4
1293 1.1 yamaguch atf_add_test_case lagg_failover_ipv6
1294 1.3 yamaguch atf_add_test_case lagg_failover_l2tp_ipv4
1295 1.3 yamaguch atf_add_test_case lagg_failover_l2tp_ipv6
1296 1.1 yamaguch atf_add_test_case lagg_loadbalance_ipv4
1297 1.1 yamaguch atf_add_test_case lagg_loadbalance_ipv6
1298 1.3 yamaguch atf_add_test_case lagg_loadbalance_l2tp_ipv4
1299 1.3 yamaguch atf_add_test_case lagg_loadbalance_l2tp_ipv6
1300 1.1 yamaguch }
1301