t_pppoe.sh revision 1.29.2.1 1 1.29.2.1 cjep # $NetBSD: t_pppoe.sh,v 1.29.2.1 2021/05/31 22:15:23 cjep Exp $
2 1.1 ozaki #
3 1.1 ozaki # Copyright (c) 2016 Internet Initiative Japan Inc.
4 1.1 ozaki # All rights reserved.
5 1.1 ozaki #
6 1.1 ozaki # Redistribution and use in source and binary forms, with or without
7 1.1 ozaki # modification, are permitted provided that the following conditions
8 1.1 ozaki # are met:
9 1.1 ozaki # 1. Redistributions of source code must retain the above copyright
10 1.1 ozaki # notice, this list of conditions and the following disclaimer.
11 1.1 ozaki # 2. Redistributions in binary form must reproduce the above copyright
12 1.1 ozaki # notice, this list of conditions and the following disclaimer in the
13 1.1 ozaki # documentation and/or other materials provided with the distribution.
14 1.1 ozaki #
15 1.1 ozaki # THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
16 1.1 ozaki # ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
17 1.1 ozaki # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
18 1.1 ozaki # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
19 1.1 ozaki # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20 1.1 ozaki # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21 1.1 ozaki # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 1.1 ozaki # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 1.1 ozaki # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24 1.1 ozaki # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25 1.1 ozaki # POSSIBILITY OF SUCH DAMAGE.
26 1.1 ozaki #
27 1.1 ozaki
28 1.17 ozaki SERVER=unix://pppoe_server
29 1.17 ozaki CLIENT=unix://pppoe_client
30 1.1 ozaki
31 1.1 ozaki SERVER_IP=10.3.3.1
32 1.1 ozaki CLIENT_IP=10.3.3.3
33 1.7 knakahar SERVER_IP6=fc00::1
34 1.7 knakahar CLIENT_IP6=fc00::3
35 1.1 ozaki AUTHNAME=foobar@baz.com
36 1.1 ozaki SECRET=oink
37 1.1 ozaki BUS=bus0
38 1.1 ozaki TIMEOUT=3
39 1.11 knakahar WAITTIME=10
40 1.10 ozaki DEBUG=${DEBUG:-false}
41 1.1 ozaki
42 1.26 yamaguch atf_ifconfig()
43 1.26 yamaguch {
44 1.26 yamaguch
45 1.26 yamaguch atf_check -s exit:0 rump.ifconfig $*
46 1.26 yamaguch }
47 1.26 yamaguch
48 1.26 yamaguch atf_pppoectl()
49 1.26 yamaguch {
50 1.26 yamaguch
51 1.26 yamaguch atf_check -s exit:0 -x "$HIJACKING pppoectl $*"
52 1.26 yamaguch }
53 1.26 yamaguch
54 1.18 ozaki atf_test_case pppoe_create_destroy cleanup
55 1.18 ozaki pppoe_create_destroy_head()
56 1.18 ozaki {
57 1.18 ozaki
58 1.18 ozaki atf_set "descr" "Test creating/destroying pppoe interfaces"
59 1.18 ozaki atf_set "require.progs" "rump_server"
60 1.18 ozaki }
61 1.18 ozaki
62 1.18 ozaki pppoe_create_destroy_body()
63 1.18 ozaki {
64 1.18 ozaki
65 1.18 ozaki rump_server_start $CLIENT netinet6 pppoe
66 1.18 ozaki
67 1.18 ozaki test_create_destroy_common $CLIENT pppoe0 true
68 1.18 ozaki }
69 1.18 ozaki
70 1.18 ozaki pppoe_create_destroy_cleanup()
71 1.18 ozaki {
72 1.18 ozaki
73 1.18 ozaki $DEBUG && dump
74 1.18 ozaki cleanup
75 1.18 ozaki }
76 1.18 ozaki
77 1.22 yamaguch setup_ifaces()
78 1.1 ozaki {
79 1.17 ozaki
80 1.17 ozaki rump_server_add_iface $SERVER shmif0 $BUS
81 1.17 ozaki rump_server_add_iface $CLIENT shmif0 $BUS
82 1.22 yamaguch rump_server_add_iface $SERVER pppoe0
83 1.22 yamaguch rump_server_add_iface $CLIENT pppoe0
84 1.1 ozaki
85 1.1 ozaki export RUMP_SERVER=$SERVER
86 1.26 yamaguch atf_ifconfig shmif0 up
87 1.26 yamaguch $inet && atf_ifconfig pppoe0 \
88 1.7 knakahar inet $SERVER_IP $CLIENT_IP down
89 1.26 yamaguch atf_ifconfig pppoe0 link0
90 1.1 ozaki
91 1.27 yamaguch $DEBUG && rump.ifconfig pppoe0 debug
92 1.1 ozaki $DEBUG && rump.ifconfig
93 1.1 ozaki $DEBUG && $HIJACKING pppoectl -d pppoe0
94 1.1 ozaki unset RUMP_SERVER
95 1.1 ozaki
96 1.1 ozaki export RUMP_SERVER=$CLIENT
97 1.26 yamaguch atf_ifconfig shmif0 up
98 1.1 ozaki
99 1.26 yamaguch $inet && atf_ifconfig pppoe0 \
100 1.7 knakahar inet 0.0.0.0 0.0.0.1 down
101 1.1 ozaki
102 1.27 yamaguch $DEBUG && rump.ifconfig pppoe0 debug
103 1.22 yamaguch $DEBUG && rump.ifconfig
104 1.22 yamaguch $DEBUG && $HIJACKING pppoectl -d pppoe0
105 1.22 yamaguch unset RUMP_SERVER
106 1.22 yamaguch }
107 1.22 yamaguch
108 1.22 yamaguch setup()
109 1.22 yamaguch {
110 1.22 yamaguch inet=true
111 1.22 yamaguch
112 1.22 yamaguch if [ $# -ne 0 ]; then
113 1.22 yamaguch eval $@
114 1.22 yamaguch fi
115 1.22 yamaguch
116 1.22 yamaguch rump_server_start $SERVER netinet6 pppoe
117 1.22 yamaguch rump_server_start $CLIENT netinet6 pppoe
118 1.22 yamaguch
119 1.22 yamaguch setup_ifaces
120 1.22 yamaguch
121 1.22 yamaguch export RUMP_SERVER=$SERVER
122 1.26 yamaguch atf_pppoectl -e shmif0 pppoe0
123 1.22 yamaguch unset RUMP_SERVER
124 1.22 yamaguch
125 1.22 yamaguch export RUMP_SERVER=$CLIENT
126 1.26 yamaguch atf_pppoectl -e shmif0 pppoe0
127 1.1 ozaki unset RUMP_SERVER
128 1.1 ozaki }
129 1.3 christos
130 1.24 yamaguch wait_for_opened()
131 1.1 ozaki {
132 1.24 yamaguch local cp=$1
133 1.24 yamaguch local dontfail=$2
134 1.1 ozaki local n=$WAITTIME
135 1.1 ozaki
136 1.1 ozaki for i in $(seq $n); do
137 1.24 yamaguch $HIJACKING pppoectl -dd pppoe0 | grep -q "$cp state: opened"
138 1.24 yamaguch if [ $? = 0 ]; then
139 1.24 yamaguch rump.ifconfig -w 10
140 1.24 yamaguch return
141 1.24 yamaguch fi
142 1.1 ozaki sleep 1
143 1.1 ozaki done
144 1.1 ozaki
145 1.8 knakahar if [ "$dontfail" != "dontfail" ]; then
146 1.1 ozaki atf_fail "Couldn't connect to the server for $n seconds."
147 1.1 ozaki fi
148 1.1 ozaki }
149 1.1 ozaki
150 1.7 knakahar wait_for_disconnected()
151 1.7 knakahar {
152 1.7 knakahar local dontfail=$1
153 1.7 knakahar local n=$WAITTIME
154 1.7 knakahar
155 1.7 knakahar for i in $(seq $n); do
156 1.24 yamaguch # If PPPoE client is disconnected by PPPoE server, then
157 1.24 yamaguch # the LCP state will of the client is in a starting to send PADI.
158 1.24 yamaguch $HIJACKING pppoectl -dd pppoe0 | grep -q \
159 1.24 yamaguch -e "LCP state: initial" -e "LCP state: starting"
160 1.15 knakahar [ $? = 0 ] && return
161 1.15 knakahar
162 1.7 knakahar sleep 1
163 1.7 knakahar done
164 1.7 knakahar
165 1.8 knakahar if [ "$dontfail" != "dontfail" ]; then
166 1.7 knakahar atf_fail "Couldn't disconnect for $n seconds."
167 1.7 knakahar fi
168 1.7 knakahar }
169 1.7 knakahar
170 1.3 christos run_test()
171 1.1 ozaki {
172 1.3 christos local auth=$1
173 1.24 yamaguch local cp="IPCP"
174 1.1 ozaki setup
175 1.1 ozaki
176 1.4 knakahar # As pppoe client doesn't support rechallenge yet.
177 1.4 knakahar local server_optparam=""
178 1.4 knakahar if [ $auth = "chap" ]; then
179 1.4 knakahar server_optparam="norechallenge"
180 1.4 knakahar fi
181 1.4 knakahar
182 1.1 ozaki export RUMP_SERVER=$SERVER
183 1.26 yamaguch atf_pppoectl pppoe0 "hisauthproto=$auth" \
184 1.26 yamaguch "hisauthname=$AUTHNAME" "hisauthsecret=$SECRET" \
185 1.26 yamaguch "myauthproto=none" $server_optparam
186 1.26 yamaguch atf_ifconfig pppoe0 up
187 1.1 ozaki unset RUMP_SERVER
188 1.1 ozaki
189 1.1 ozaki export RUMP_SERVER=$CLIENT
190 1.26 yamaguch atf_pppoectl pppoe0 \
191 1.26 yamaguch "myauthname=$AUTHNAME" "myauthsecret=$SECRET" \
192 1.26 yamaguch "myauthproto=$auth" "hisauthproto=none"
193 1.26 yamaguch atf_ifconfig pppoe0 up
194 1.1 ozaki $DEBUG && rump.ifconfig
195 1.24 yamaguch wait_for_opened $cp
196 1.1 ozaki atf_check -s exit:0 -o ignore rump.ping -c 1 -w $TIMEOUT $SERVER_IP
197 1.1 ozaki unset RUMP_SERVER
198 1.1 ozaki
199 1.1 ozaki # test for disconnection from server
200 1.16 knakahar export RUMP_SERVER=$SERVER
201 1.26 yamaguch atf_ifconfig pppoe0 down
202 1.16 knakahar wait_for_disconnected
203 1.1 ozaki export RUMP_SERVER=$CLIENT
204 1.16 knakahar wait_for_disconnected
205 1.1 ozaki atf_check -s not-exit:0 -o ignore -e ignore \
206 1.1 ozaki rump.ping -c 1 -w $TIMEOUT $SERVER_IP
207 1.29.2.1 cjep atf_check -s exit:0 -o match:'(PADI sent)|(initial)' \
208 1.29.2.1 cjep -x "$HIJACKING pppoectl -d pppoe0"
209 1.1 ozaki unset RUMP_SERVER
210 1.1 ozaki
211 1.20 yamaguch # test for reconnecting
212 1.1 ozaki atf_check -s exit:0 -x "env RUMP_SERVER=$SERVER rump.ifconfig pppoe0 up"
213 1.1 ozaki export RUMP_SERVER=$CLIENT
214 1.24 yamaguch wait_for_opened $cp
215 1.1 ozaki atf_check -s exit:0 -o ignore rump.ping -c 1 -w $TIMEOUT $SERVER_IP
216 1.1 ozaki unset RUMP_SERVER
217 1.1 ozaki
218 1.1 ozaki # test for disconnection from client
219 1.16 knakahar export RUMP_SERVER=$CLIENT
220 1.26 yamaguch atf_ifconfig pppoe0 down
221 1.16 knakahar wait_for_disconnected
222 1.1 ozaki export RUMP_SERVER=$SERVER
223 1.16 knakahar wait_for_disconnected
224 1.1 ozaki $DEBUG && $HIJACKING pppoectl -d pppoe0
225 1.1 ozaki atf_check -s not-exit:0 -o ignore -e ignore \
226 1.1 ozaki rump.ping -c 1 -w $TIMEOUT $CLIENT_IP
227 1.1 ozaki atf_check -s exit:0 -o match:'initial' -x "$HIJACKING pppoectl -d pppoe0"
228 1.1 ozaki unset RUMP_SERVER
229 1.1 ozaki
230 1.9 knakahar # test for reconnecting
231 1.1 ozaki export RUMP_SERVER=$CLIENT
232 1.26 yamaguch atf_ifconfig pppoe0 up
233 1.24 yamaguch wait_for_opened $cp
234 1.1 ozaki $DEBUG && rump.ifconfig pppoe0
235 1.1 ozaki $DEBUG && $HIJACKING pppoectl -d pppoe0
236 1.1 ozaki unset RUMP_SERVER
237 1.1 ozaki
238 1.1 ozaki export RUMP_SERVER=$SERVER
239 1.26 yamaguch atf_ifconfig -w 10
240 1.1 ozaki atf_check -s exit:0 -o ignore rump.ping -c 1 -w $TIMEOUT $CLIENT_IP
241 1.1 ozaki atf_check -s exit:0 -o match:'session' -x "$HIJACKING pppoectl -d pppoe0"
242 1.29.2.1 cjep $DEBUG && $HIJACKING pppoectl -d pppoe0
243 1.1 ozaki unset RUMP_SERVER
244 1.1 ozaki
245 1.1 ozaki # test for invalid password
246 1.1 ozaki export RUMP_SERVER=$CLIENT
247 1.26 yamaguch atf_ifconfig pppoe0 down
248 1.16 knakahar wait_for_disconnected
249 1.26 yamaguch atf_pppoectl pppoe0 "myauthproto=$auth" \
250 1.26 yamaguch "myauthname=$AUTHNAME" \
251 1.26 yamaguch "myauthsecret=invalidsecret" \
252 1.26 yamaguch "hisauthproto=none" \
253 1.26 yamaguch "max-auth-failure=1"
254 1.26 yamaguch atf_ifconfig pppoe0 up
255 1.24 yamaguch wait_for_opened $cp dontfail
256 1.1 ozaki atf_check -s not-exit:0 -o ignore -e ignore \
257 1.1 ozaki rump.ping -c 1 -w $TIMEOUT $SERVER_IP
258 1.13 knakahar atf_check -s exit:0 -o match:'DETACHED' rump.ifconfig pppoe0
259 1.1 ozaki unset RUMP_SERVER
260 1.1 ozaki }
261 1.1 ozaki
262 1.6 ozaki atf_test_case pppoe_pap cleanup
263 1.3 christos
264 1.5 ozaki pppoe_pap_head()
265 1.3 christos {
266 1.3 christos atf_set "descr" "Does simple pap tests"
267 1.3 christos atf_set "require.progs" "rump_server pppoectl"
268 1.3 christos }
269 1.3 christos
270 1.5 ozaki pppoe_pap_body()
271 1.3 christos {
272 1.3 christos run_test pap
273 1.3 christos }
274 1.3 christos
275 1.5 ozaki pppoe_pap_cleanup()
276 1.1 ozaki {
277 1.17 ozaki
278 1.17 ozaki $DEBUG && dump
279 1.1 ozaki cleanup
280 1.1 ozaki }
281 1.3 christos
282 1.6 ozaki atf_test_case pppoe_chap cleanup
283 1.3 christos
284 1.5 ozaki pppoe_chap_head()
285 1.3 christos {
286 1.3 christos atf_set "descr" "Does simple chap tests"
287 1.3 christos atf_set "require.progs" "rump_server pppoectl"
288 1.3 christos }
289 1.3 christos
290 1.5 ozaki pppoe_chap_body()
291 1.3 christos {
292 1.3 christos run_test chap
293 1.3 christos }
294 1.3 christos
295 1.5 ozaki pppoe_chap_cleanup()
296 1.3 christos {
297 1.17 ozaki
298 1.17 ozaki $DEBUG && dump
299 1.3 christos cleanup
300 1.3 christos }
301 1.3 christos
302 1.7 knakahar run_test6()
303 1.7 knakahar {
304 1.7 knakahar local auth=$1
305 1.24 yamaguch local cp="IPv6CP"
306 1.7 knakahar setup "inet=false"
307 1.7 knakahar
308 1.7 knakahar # As pppoe client doesn't support rechallenge yet.
309 1.7 knakahar local server_optparam=""
310 1.7 knakahar if [ $auth = "chap" ]; then
311 1.7 knakahar server_optparam="norechallenge"
312 1.7 knakahar fi
313 1.7 knakahar
314 1.7 knakahar export RUMP_SERVER=$SERVER
315 1.26 yamaguch atf_pppoectl pppoe0 \
316 1.26 yamaguch "hisauthname=$AUTHNAME" "hisauthsecret=$SECRET" \
317 1.26 yamaguch "hisauthproto=$auth" "myauthproto=none" \
318 1.26 yamaguch $server_optparam
319 1.26 yamaguch atf_ifconfig pppoe0 inet6 $SERVER_IP6/64 down
320 1.26 yamaguch atf_ifconfig pppoe0 up
321 1.7 knakahar unset RUMP_SERVER
322 1.7 knakahar
323 1.7 knakahar export RUMP_SERVER=$CLIENT
324 1.26 yamaguch atf_pppoectl pppoe0 \
325 1.26 yamaguch "myauthname=$AUTHNAME" "myauthsecret=$SECRET" \
326 1.26 yamaguch "myauthproto=$auth" "hisauthproto=none"
327 1.26 yamaguch atf_ifconfig pppoe0 inet6 $CLIENT_IP6/64 down
328 1.26 yamaguch atf_ifconfig pppoe0 up
329 1.7 knakahar $DEBUG && rump.ifconfig
330 1.24 yamaguch wait_for_opened $cp
331 1.26 yamaguch atf_ifconfig -w 10
332 1.7 knakahar export RUMP_SERVER=$SERVER
333 1.26 yamaguch rump.ifconfig -w 10
334 1.7 knakahar export RUMP_SERVER=$CLIENT
335 1.7 knakahar atf_check -s exit:0 -o ignore rump.ping6 -c 1 -X $TIMEOUT $SERVER_IP6
336 1.7 knakahar unset RUMP_SERVER
337 1.7 knakahar
338 1.7 knakahar # test for disconnection from server
339 1.7 knakahar export RUMP_SERVER=$SERVER
340 1.7 knakahar session_id=`$HIJACKING pppoectl -d pppoe0 | grep state`
341 1.26 yamaguch atf_ifconfig pppoe0 down
342 1.7 knakahar wait_for_disconnected
343 1.7 knakahar export RUMP_SERVER=$CLIENT
344 1.7 knakahar wait_for_disconnected
345 1.7 knakahar atf_check -s not-exit:0 -o ignore -e ignore \
346 1.14 knakahar rump.ping6 -c 1 -X $TIMEOUT $SERVER_IP6
347 1.7 knakahar atf_check -s exit:0 -o not-match:"$session_id" -x "$HIJACKING pppoectl -d pppoe0"
348 1.7 knakahar unset RUMP_SERVER
349 1.7 knakahar
350 1.20 yamaguch # test for reconnecting
351 1.7 knakahar export RUMP_SERVER=$SERVER
352 1.26 yamaguch atf_ifconfig pppoe0 up
353 1.24 yamaguch wait_for_opened $cp
354 1.26 yamaguch atf_ifconfig -w 10
355 1.7 knakahar $DEBUG && $HIJACKING pppoectl -d pppoe0
356 1.7 knakahar $DEBUG && rump.ifconfig pppoe0
357 1.7 knakahar export RUMP_SERVER=$CLIENT
358 1.26 yamaguch atf_ifconfig -w 10
359 1.7 knakahar atf_check -s exit:0 -o ignore rump.ping6 -c 1 -X $TIMEOUT $SERVER_IP6
360 1.7 knakahar unset RUMP_SERVER
361 1.7 knakahar
362 1.7 knakahar # test for disconnection from client
363 1.7 knakahar export RUMP_SERVER=$CLIENT
364 1.26 yamaguch atf_ifconfig pppoe0 down
365 1.7 knakahar wait_for_disconnected
366 1.7 knakahar
367 1.7 knakahar export RUMP_SERVER=$SERVER
368 1.16 knakahar wait_for_disconnected
369 1.7 knakahar $DEBUG && $HIJACKING pppoectl -d pppoe0
370 1.7 knakahar atf_check -s not-exit:0 -o ignore -e ignore \
371 1.7 knakahar rump.ping6 -c 1 -X $TIMEOUT $CLIENT_IP6
372 1.7 knakahar atf_check -s exit:0 -o match:'initial' -x "$HIJACKING pppoectl -d pppoe0"
373 1.7 knakahar unset RUMP_SERVER
374 1.7 knakahar
375 1.9 knakahar # test for reconnecting
376 1.7 knakahar export RUMP_SERVER=$CLIENT
377 1.26 yamaguch atf_ifconfig pppoe0 up
378 1.24 yamaguch wait_for_opened $cp
379 1.26 yamaguch atf_ifconfig -w 10
380 1.7 knakahar
381 1.7 knakahar $DEBUG && rump.ifconfig pppoe0
382 1.7 knakahar $DEBUG && $HIJACKING pppoectl -d pppoe0
383 1.7 knakahar unset RUMP_SERVER
384 1.7 knakahar
385 1.7 knakahar export RUMP_SERVER=$SERVER
386 1.26 yamaguch atf_ifconfig -w 10
387 1.7 knakahar atf_check -s exit:0 -o ignore rump.ping6 -c 1 -X $TIMEOUT $CLIENT_IP6
388 1.7 knakahar atf_check -s exit:0 -o match:'session' -x "$HIJACKING pppoectl -d pppoe0"
389 1.7 knakahar $DEBUG && HIJACKING pppoectl -d pppoe0
390 1.7 knakahar unset RUMP_SERVER
391 1.7 knakahar
392 1.7 knakahar # test for invalid password
393 1.7 knakahar export RUMP_SERVER=$CLIENT
394 1.26 yamaguch atf_ifconfig pppoe0 down
395 1.7 knakahar wait_for_disconnected
396 1.26 yamaguch atf_pppoectl pppoe0 \
397 1.26 yamaguch "myauthname=$AUTHNAME" "myauthsecret=invalidsecret" \
398 1.26 yamaguch "myauthproto=$auth" "hisauthproto=none" \
399 1.26 yamaguch "max-auth-failure=1"
400 1.26 yamaguch atf_ifconfig pppoe0 up
401 1.24 yamaguch wait_for_opened $cp dontfail
402 1.7 knakahar atf_check -s not-exit:0 -o ignore -e ignore \
403 1.7 knakahar rump.ping6 -c 1 -X $TIMEOUT $SERVER_IP6
404 1.7 knakahar atf_check -s exit:0 -o match:'DETACHED' rump.ifconfig pppoe0
405 1.7 knakahar unset RUMP_SERVER
406 1.7 knakahar }
407 1.7 knakahar
408 1.7 knakahar atf_test_case pppoe6_pap cleanup
409 1.7 knakahar
410 1.7 knakahar pppoe6_pap_head()
411 1.7 knakahar {
412 1.7 knakahar atf_set "descr" "Does simple pap using IPv6 tests"
413 1.7 knakahar atf_set "require.progs" "rump_server pppoectl"
414 1.7 knakahar }
415 1.7 knakahar
416 1.7 knakahar pppoe6_pap_body()
417 1.7 knakahar {
418 1.7 knakahar run_test6 pap
419 1.7 knakahar }
420 1.7 knakahar
421 1.7 knakahar pppoe6_pap_cleanup()
422 1.7 knakahar {
423 1.17 ozaki
424 1.17 ozaki $DEBUG && dump
425 1.7 knakahar cleanup
426 1.7 knakahar }
427 1.7 knakahar
428 1.7 knakahar atf_test_case pppoe6_chap cleanup
429 1.7 knakahar
430 1.7 knakahar pppoe6_chap_head()
431 1.7 knakahar {
432 1.7 knakahar atf_set "descr" "Does simple chap using IPv6 tests"
433 1.7 knakahar atf_set "require.progs" "rump_server pppoectl"
434 1.7 knakahar }
435 1.7 knakahar
436 1.7 knakahar pppoe6_chap_body()
437 1.7 knakahar {
438 1.7 knakahar run_test6 chap
439 1.7 knakahar }
440 1.7 knakahar
441 1.7 knakahar pppoe6_chap_cleanup()
442 1.7 knakahar {
443 1.17 ozaki
444 1.17 ozaki $DEBUG && dump
445 1.7 knakahar cleanup
446 1.7 knakahar }
447 1.7 knakahar
448 1.22 yamaguch atf_test_case pppoe_params cleanup
449 1.22 yamaguch
450 1.22 yamaguch dump_bus()
451 1.22 yamaguch {
452 1.22 yamaguch
453 1.22 yamaguch shmif_dumpbus -p - ${BUS} | tcpdump -n -e -r -
454 1.22 yamaguch }
455 1.22 yamaguch
456 1.22 yamaguch setup_auth_conf()
457 1.22 yamaguch {
458 1.22 yamaguch local auth=chap
459 1.26 yamaguch local server_optparam="norechallenge"
460 1.22 yamaguch
461 1.22 yamaguch export RUMP_SERVER=$SERVER
462 1.26 yamaguch atf_ifconfig pppoe0 link0
463 1.26 yamaguch atf_pppoectl pppoe0 \
464 1.26 yamaguch "hisauthname=$AUTHNAME" "hisauthsecret=$SECRET" \
465 1.26 yamaguch "hisauthproto=$auth" "myauthproto=none" \
466 1.26 yamaguch $server_optparam
467 1.22 yamaguch unset RUMP_SERVER
468 1.22 yamaguch
469 1.22 yamaguch export RUMP_SERVER=$CLIENT
470 1.26 yamaguch $inet && atf_ifconfig pppoe0 \
471 1.22 yamaguch inet 0.0.0.0 0.0.0.1 down
472 1.26 yamaguch atf_pppoectl pppoe0 \
473 1.26 yamaguch "myauthname=$AUTHNAME" "myauthsecret=$SECRET" \
474 1.26 yamaguch "myauthproto=$auth" "hisauthproto=none"
475 1.26 yamaguch
476 1.22 yamaguch $DEBUG && rump.ifconfig
477 1.22 yamaguch unset RUMP_SERVER
478 1.22 yamaguch }
479 1.22 yamaguch
480 1.22 yamaguch pppoe_params_head()
481 1.22 yamaguch {
482 1.22 yamaguch atf_set "descr" "Set and clear access concentrator name and service name"
483 1.22 yamaguch atf_set "require.progs" "rump_server pppoectl"
484 1.22 yamaguch }
485 1.22 yamaguch
486 1.22 yamaguch pppoe_params_body()
487 1.22 yamaguch {
488 1.22 yamaguch local dumpcmd
489 1.24 yamaguch local cp="LCP"
490 1.22 yamaguch
491 1.22 yamaguch dumpcmd="shmif_dumpbus -p - ${BUS}"
492 1.22 yamaguch dumpcmd="${dumpcmd} | tcpdump -n -e -r -"
493 1.22 yamaguch
494 1.22 yamaguch rump_server_start $SERVER netinet6 pppoe
495 1.22 yamaguch rump_server_start $CLIENT netinet6 pppoe
496 1.22 yamaguch
497 1.22 yamaguch setup_ifaces
498 1.22 yamaguch setup_auth_conf
499 1.22 yamaguch
500 1.22 yamaguch export RUMP_SERVER=$SERVER
501 1.26 yamaguch atf_pppoectl -e shmif0 pppoe0
502 1.26 yamaguch atf_ifconfig pppoe0 up
503 1.22 yamaguch unset RUMP_SERVER
504 1.22 yamaguch
505 1.22 yamaguch export RUMP_SERVER=$CLIENT
506 1.26 yamaguch atf_pppoectl -e shmif0 pppoe0
507 1.26 yamaguch atf_ifconfig pppoe0 up
508 1.22 yamaguch $DEBUG && rump.ifconfig
509 1.24 yamaguch wait_for_opened $cp
510 1.22 yamaguch unset RUMP_SERVER
511 1.22 yamaguch
512 1.22 yamaguch $DEBUG && dump_bus
513 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name\]' -e ignore \
514 1.22 yamaguch -x "${dumpcmd} | grep PADI"
515 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name\]' -e ignore \
516 1.22 yamaguch -x "${dumpcmd} | grep PADR"
517 1.22 yamaguch atf_check -s exit:0 -o not-match:'AC-Name' -e ignore \
518 1.22 yamaguch -x "${dumpcmd} | grep PADI"
519 1.22 yamaguch
520 1.22 yamaguch # set Remote access concentrator name (AC-NAME, -a option)
521 1.22 yamaguch export RUMP_SERVER=$CLIENT
522 1.26 yamaguch atf_ifconfig pppoe0 down
523 1.22 yamaguch wait_for_disconnected
524 1.26 yamaguch atf_pppoectl -e shmif0 -a ACNAME-TEST0 pppoe0
525 1.26 yamaguch atf_ifconfig pppoe0 up
526 1.22 yamaguch $DEBUG && rump.ifconfig
527 1.24 yamaguch wait_for_opened $cp
528 1.22 yamaguch unset RUMP_SERVER
529 1.22 yamaguch
530 1.22 yamaguch $DEBUG && dump_bus
531 1.22 yamaguch atf_check -s exit:0 -o match:'\[AC-Name "ACNAME-TEST0"\]' -e ignore \
532 1.22 yamaguch -x "${dumpcmd} | grep PADI"
533 1.22 yamaguch
534 1.22 yamaguch # change AC-NAME
535 1.22 yamaguch export RUMP_SERVER=$CLIENT
536 1.26 yamaguch atf_ifconfig pppoe0 down
537 1.22 yamaguch wait_for_disconnected
538 1.26 yamaguch atf_pppoectl -e shmif0 -a ACNAME-TEST1 pppoe0
539 1.26 yamaguch atf_ifconfig pppoe0 up
540 1.22 yamaguch $DEBUG && rump.ifconfig
541 1.24 yamaguch wait_for_opened $cp
542 1.22 yamaguch unset RUMP_SERVER
543 1.22 yamaguch
544 1.22 yamaguch $DEBUG && dump_bus
545 1.22 yamaguch atf_check -s exit:0 -o match:'\[AC-Name "ACNAME-TEST1"\]' -e ignore \
546 1.22 yamaguch -x "${dumpcmd} | grep PADI"
547 1.22 yamaguch
548 1.22 yamaguch # clear AC-NAME
549 1.22 yamaguch rump_server_destroy_ifaces
550 1.22 yamaguch rm ${BUS} 2> /dev/null
551 1.22 yamaguch setup_ifaces
552 1.22 yamaguch setup_auth_conf
553 1.22 yamaguch
554 1.22 yamaguch export RUMP_SERVER=$SERVER
555 1.26 yamaguch atf_pppoectl -e shmif0 pppoe0
556 1.26 yamaguch atf_ifconfig pppoe0 up
557 1.22 yamaguch unset RUMP_SERVER
558 1.22 yamaguch
559 1.22 yamaguch export RUMP_SERVER=$CLIENT
560 1.26 yamaguch atf_ifconfig pppoe0 down
561 1.22 yamaguch wait_for_disconnected
562 1.26 yamaguch atf_pppoectl -a ACNAME-TEST2 -e shmif0 pppoe0
563 1.26 yamaguch atf_pppoectl -e shmif0 pppoe0
564 1.26 yamaguch atf_ifconfig pppoe0 up
565 1.22 yamaguch $DEBUG && rump.ifconfig
566 1.24 yamaguch wait_for_opened $cp
567 1.22 yamaguch unset RUMP_SERVER
568 1.22 yamaguch
569 1.22 yamaguch $DEBUG && dump_bus
570 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name\]' -e ignore \
571 1.22 yamaguch -x "${dumpcmd} | grep PADI"
572 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name\]' -e ignore \
573 1.22 yamaguch -x "${dumpcmd} | grep PADR"
574 1.23 yamaguch atf_check -s exit:0 -o not-match:'AC-Name' -e ignore \
575 1.23 yamaguch -x "${dumpcmd} | grep PADI"
576 1.23 yamaguch
577 1.23 yamaguch # store 0 length string in AC-NAME
578 1.23 yamaguch export RUMP_SERVER=$CLIENT
579 1.26 yamaguch atf_ifconfig pppoe0 down
580 1.23 yamaguch wait_for_disconnected
581 1.26 yamaguch atf_pppoectl -a \"\" -e shmif0 pppoe0
582 1.26 yamaguch atf_ifconfig pppoe0 up
583 1.23 yamaguch $DEBUG && rump.ifconfig
584 1.24 yamaguch wait_for_opened $cp
585 1.23 yamaguch unset RUMP_SERVER
586 1.23 yamaguch
587 1.22 yamaguch atf_check -s exit:0 -o match:'\[AC-Name\]' -e ignore \
588 1.22 yamaguch -x "${dumpcmd} | grep PADI"
589 1.22 yamaguch
590 1.22 yamaguch # set Service Name (Service-Name, -s option)
591 1.22 yamaguch rump_server_destroy_ifaces
592 1.22 yamaguch rm ${BUS} 2> /dev/null
593 1.22 yamaguch setup_ifaces
594 1.22 yamaguch setup_auth_conf
595 1.22 yamaguch
596 1.22 yamaguch export RUMP_SERVER=$SERVER
597 1.26 yamaguch atf_pppoectl -e shmif0 pppoe0
598 1.26 yamaguch atf_ifconfig pppoe0 up
599 1.22 yamaguch unset RUMP_SERVER
600 1.22 yamaguch
601 1.22 yamaguch export RUMP_SERVER=$CLIENT
602 1.26 yamaguch atf_ifconfig pppoe0 down
603 1.22 yamaguch wait_for_disconnected
604 1.26 yamaguch atf_pppoectl -e shmif0 -s SNAME-TEST0 pppoe0
605 1.26 yamaguch atf_ifconfig pppoe0 up
606 1.22 yamaguch $DEBUG && rump.ifconfig
607 1.24 yamaguch wait_for_opened $cp
608 1.22 yamaguch unset RUMP_SERVER
609 1.22 yamaguch
610 1.22 yamaguch $DEBUG && dump_bus
611 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name "SNAME-TEST0"\]' -e ignore \
612 1.22 yamaguch -x "${dumpcmd} | grep PADI"
613 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name "SNAME-TEST0"\]' -e ignore \
614 1.22 yamaguch -x "${dumpcmd} | grep PADR"
615 1.22 yamaguch atf_check -s exit:0 -o not-match:'AC-Name' -e ignore \
616 1.22 yamaguch -x "${dumpcmd} | grep PADI"
617 1.22 yamaguch
618 1.22 yamaguch # change Service-Name
619 1.22 yamaguch export RUMP_SERVER=$CLIENT
620 1.26 yamaguch atf_ifconfig pppoe0 down
621 1.22 yamaguch wait_for_disconnected
622 1.26 yamaguch atf_pppoectl -e shmif0 -s SNAME-TEST1 pppoe0
623 1.26 yamaguch atf_ifconfig pppoe0 up
624 1.22 yamaguch $DEBUG && rump.ifconfig
625 1.24 yamaguch wait_for_opened $cp
626 1.22 yamaguch unset RUMP_SERVER
627 1.22 yamaguch
628 1.22 yamaguch $DEBUG && dump_bus
629 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name "SNAME-TEST1"\]' -e ignore \
630 1.22 yamaguch -x "${dumpcmd} | grep PADI"
631 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name "SNAME-TEST1"\]' -e ignore \
632 1.22 yamaguch -x "${dumpcmd} | grep PADR"
633 1.22 yamaguch
634 1.22 yamaguch # clear Service-Name
635 1.22 yamaguch rump_server_destroy_ifaces
636 1.22 yamaguch rm ${BUS} 2> /dev/null
637 1.22 yamaguch setup_ifaces
638 1.22 yamaguch setup_auth_conf
639 1.22 yamaguch
640 1.22 yamaguch export RUMP_SERVER=$SERVER
641 1.26 yamaguch atf_pppoectl -e shmif0 pppoe0
642 1.26 yamaguch atf_ifconfig pppoe0 up
643 1.22 yamaguch unset RUMP_SERVER
644 1.22 yamaguch
645 1.22 yamaguch export RUMP_SERVER=$CLIENT
646 1.26 yamaguch atf_ifconfig pppoe0 down
647 1.22 yamaguch wait_for_disconnected
648 1.26 yamaguch atf_pppoectl -s SNAME-TEST2 -e shmif0 pppoe0
649 1.26 yamaguch atf_pppoectl -e shmif0 pppoe0
650 1.26 yamaguch atf_ifconfig pppoe0 up
651 1.22 yamaguch $DEBUG && rump.ifconfig
652 1.24 yamaguch wait_for_opened $cp
653 1.22 yamaguch unset RUMP_SERVER
654 1.22 yamaguch
655 1.22 yamaguch $DEBUG && dump_bus
656 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name\]' -e ignore \
657 1.22 yamaguch -x "${dumpcmd} | grep PADI"
658 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name\]' -e ignore \
659 1.22 yamaguch -x "${dumpcmd} | grep PADR"
660 1.22 yamaguch atf_check -s exit:0 -o not-match:'AC-Name' -e ignore \
661 1.22 yamaguch -x "${dumpcmd} | grep PADI"
662 1.22 yamaguch
663 1.22 yamaguch # set AC-NAME and Service-Name
664 1.22 yamaguch rump_server_destroy_ifaces
665 1.22 yamaguch rm ${BUS} 2> /dev/null
666 1.22 yamaguch setup_ifaces
667 1.22 yamaguch setup_auth_conf
668 1.22 yamaguch
669 1.22 yamaguch export RUMP_SERVER=$SERVER
670 1.26 yamaguch atf_pppoectl -e shmif0 pppoe0
671 1.26 yamaguch atf_ifconfig pppoe0 up
672 1.22 yamaguch unset RUMP_SERVER
673 1.22 yamaguch
674 1.22 yamaguch export RUMP_SERVER=$CLIENT
675 1.26 yamaguch atf_ifconfig pppoe0 down
676 1.22 yamaguch wait_for_disconnected
677 1.26 yamaguch atf_pppoectl -e shmif0 -a ACNAME-TEST3 -s SNAME-TEST3 pppoe0
678 1.26 yamaguch atf_ifconfig pppoe0 up
679 1.22 yamaguch $DEBUG && rump.ifconfig
680 1.24 yamaguch wait_for_opened $cp
681 1.22 yamaguch unset RUMP_SERVER
682 1.22 yamaguch
683 1.22 yamaguch $DEBUG && dump_bus
684 1.22 yamaguch atf_check -s exit:0 \
685 1.22 yamaguch -o match:'\[Service-Name "SNAME-TEST3"\] \[AC-Name "ACNAME-TEST3"\]' \
686 1.22 yamaguch -e ignore \
687 1.22 yamaguch -x "${dumpcmd} | grep PADI"
688 1.22 yamaguch atf_check -s exit:0 -o match:'\[Service-Name "SNAME-TEST3"\]' -e ignore \
689 1.22 yamaguch -x "${dumpcmd} | grep PADR"
690 1.22 yamaguch
691 1.22 yamaguch # change AC-NAME
692 1.22 yamaguch export RUMP_SERVER=$CLIENT
693 1.26 yamaguch atf_ifconfig pppoe0 down
694 1.22 yamaguch wait_for_disconnected
695 1.26 yamaguch atf_pppoectl -e shmif0 -a ACNAME-TEST4 pppoe0
696 1.26 yamaguch atf_ifconfig pppoe0 up
697 1.22 yamaguch $DEBUG && rump.ifconfig
698 1.24 yamaguch wait_for_opened $cp
699 1.22 yamaguch unset RUMP_SERVER
700 1.22 yamaguch
701 1.22 yamaguch $DEBUG && dump_bus
702 1.22 yamaguch atf_check -s exit:0 \
703 1.23 yamaguch -o match:'\[Service-Name\] \[AC-Name "ACNAME-TEST4"\]' \
704 1.22 yamaguch -e ignore \
705 1.22 yamaguch -x "${dumpcmd} | grep PADI"
706 1.23 yamaguch atf_check -s exit:0 -o match:'\[Service-Name\]' -e ignore \
707 1.22 yamaguch -x "${dumpcmd} | grep PADR"
708 1.22 yamaguch
709 1.22 yamaguch # change Service-Name
710 1.22 yamaguch export RUMP_SERVER=$CLIENT
711 1.26 yamaguch atf_ifconfig pppoe0 down
712 1.22 yamaguch wait_for_disconnected
713 1.26 yamaguch atf_pppoectl -e shmif0 -a ACNAME-TEST5 -s SNAME-TEST5 pppoe0
714 1.26 yamaguch atf_pppoectl -e shmif0 -s SNAME-TEST6 pppoe0
715 1.26 yamaguch atf_ifconfig pppoe0 up
716 1.22 yamaguch $DEBUG && rump.ifconfig
717 1.24 yamaguch wait_for_opened $cp
718 1.22 yamaguch unset RUMP_SERVER
719 1.22 yamaguch
720 1.22 yamaguch $DEBUG && dump_bus
721 1.22 yamaguch atf_check -s exit:0 \
722 1.23 yamaguch -o match:'\[Service-Name "SNAME-TEST6"\]' \
723 1.22 yamaguch -e ignore \
724 1.22 yamaguch -x "${dumpcmd} | grep PADI"
725 1.23 yamaguch atf_check -s exit:0 -o match:'\[Service-Name "SNAME-TEST6"\]' -e ignore \
726 1.22 yamaguch -x "${dumpcmd} | grep PADR"
727 1.23 yamaguch atf_check -s exit:0 -o not-match:'\[AC-Name "ACNAME-TEST5\]"' -e ignore \
728 1.23 yamaguch -x "${dumpcmd} | grep PADI"
729 1.29.2.1 cjep
730 1.29.2.1 cjep export RUMP_SERVER=$CLIENT
731 1.29.2.1 cjep atf_ifconfig pppoe0 down
732 1.29.2.1 cjep export RUMP_SERVER=$SERVER
733 1.29.2.1 cjep wait_for_disconnected
734 1.29.2.1 cjep
735 1.29.2.1 cjep # ipcp & ipv6cp are enabled by default
736 1.29.2.1 cjep export RUMP_SERVER=$CLIENT
737 1.29.2.1 cjep atf_check -s exit:0 -o match:'ipcp: enable' \
738 1.29.2.1 cjep -x "$HIJACKING pppoectl pppoe0"
739 1.29.2.1 cjep atf_check -s exit:0 -o match:'ipv6cp: enable' \
740 1.29.2.1 cjep -x "$HIJACKING pppoectl pppoe0"
741 1.29.2.1 cjep
742 1.29.2.1 cjep # ipcp enable & ipv6cp disable
743 1.29.2.1 cjep atf_pppoectl pppoe0 noipv6cp
744 1.29.2.1 cjep atf_ifconfig pppoe0 up
745 1.29.2.1 cjep wait_for_opened "IPCP"
746 1.29.2.1 cjep atf_check -s exit:0 -o match:'IPv6CP state: initial' \
747 1.29.2.1 cjep -x "$HIJACKING pppoectl -dd pppoe0"
748 1.29.2.1 cjep
749 1.29.2.1 cjep atf_ifconfig pppoe0 down
750 1.29.2.1 cjep export RUMP_SERVER=$SERVER
751 1.29.2.1 cjep wait_for_disconnected
752 1.29.2.1 cjep
753 1.29.2.1 cjep # ipcp disable & ipv6cp enable
754 1.29.2.1 cjep export RUMP_SERVER=$CLIENT
755 1.29.2.1 cjep atf_pppoectl pppoe0 noipcp ipv6cp
756 1.29.2.1 cjep atf_ifconfig pppoe0 up
757 1.29.2.1 cjep wait_for_opened "IPv6CP"
758 1.29.2.1 cjep atf_check -s exit:0 -o match:'IPCP state: initial' \
759 1.29.2.1 cjep -x "$HIJACKING pppoectl -dd pppoe0"
760 1.22 yamaguch }
761 1.22 yamaguch
762 1.22 yamaguch pppoe_params_cleanup()
763 1.22 yamaguch {
764 1.22 yamaguch
765 1.22 yamaguch $DEBUG && dump
766 1.22 yamaguch cleanup
767 1.22 yamaguch }
768 1.25 yamaguch
769 1.25 yamaguch pppoe_passiveauthproto()
770 1.25 yamaguch {
771 1.25 yamaguch local auth=$1
772 1.25 yamaguch local cp="IPCP"
773 1.25 yamaguch setup
774 1.25 yamaguch
775 1.25 yamaguch local server_optparam=""
776 1.25 yamaguch if [ $auth = "chap" ]; then
777 1.25 yamaguch server_optparam="norechallenge"
778 1.25 yamaguch fi
779 1.25 yamaguch
780 1.25 yamaguch export RUMP_SERVER=$SERVER
781 1.26 yamaguch atf_pppoectl pppoe0 \
782 1.26 yamaguch "hisauthname=$AUTHNAME" "hisauthsecret=$SECRET" \
783 1.26 yamaguch "hisauthproto=$auth" "myauthproto=none" \
784 1.26 yamaguch $server_optparam
785 1.26 yamaguch atf_ifconfig pppoe0 up
786 1.26 yamaguch
787 1.26 yamaguch export RUMP_SERVER=$CLIENT
788 1.26 yamaguch atf_pppoectl pppoe0 \
789 1.26 yamaguch "myauthname=$AUTHNAME" "myauthsecret=$SECRET" \
790 1.26 yamaguch "myauthproto=none" "hisauthproto=none" \
791 1.26 yamaguch "passiveauthproto"
792 1.26 yamaguch atf_ifconfig pppoe0 up
793 1.25 yamaguch $DEBUG && rump.ifconfig
794 1.25 yamaguch wait_for_opened $cp
795 1.29 yamaguch atf_ifconfig -w 10
796 1.25 yamaguch atf_check -s exit:0 -o ignore rump.ping -c 1 -w $TIMEOUT $SERVER_IP
797 1.25 yamaguch }
798 1.25 yamaguch
799 1.25 yamaguch atf_test_case pppoe_passiveauthproto_pap cleanup
800 1.25 yamaguch pppoe_passiveauthproto_pap_head()
801 1.25 yamaguch {
802 1.25 yamaguch
803 1.25 yamaguch atf_set "descr" "Test for passiveauthproto option on PAP"
804 1.25 yamaguch atf_set "require.progs" "rump_server"
805 1.25 yamaguch }
806 1.25 yamaguch
807 1.25 yamaguch pppoe_passiveauthproto_pap_body()
808 1.25 yamaguch {
809 1.25 yamaguch
810 1.25 yamaguch pppoe_passiveauthproto "pap"
811 1.25 yamaguch }
812 1.25 yamaguch
813 1.25 yamaguch pppoe_passiveauthproto_pap_cleanup()
814 1.25 yamaguch {
815 1.25 yamaguch
816 1.25 yamaguch $DEBUG && dump
817 1.25 yamaguch cleanup
818 1.25 yamaguch }
819 1.25 yamaguch
820 1.25 yamaguch atf_test_case pppoe_passiveauthproto_chap cleanup
821 1.25 yamaguch pppoe_passiveauthproto_chap_head()
822 1.25 yamaguch {
823 1.25 yamaguch
824 1.25 yamaguch atf_set "descr" "Test for passiveauthproto option on chap"
825 1.25 yamaguch atf_set "require.progs" "rump_server"
826 1.25 yamaguch }
827 1.25 yamaguch
828 1.25 yamaguch pppoe_passiveauthproto_chap_body()
829 1.25 yamaguch {
830 1.25 yamaguch
831 1.25 yamaguch pppoe_passiveauthproto "chap"
832 1.25 yamaguch }
833 1.25 yamaguch
834 1.25 yamaguch pppoe_passiveauthproto_chap_cleanup()
835 1.25 yamaguch {
836 1.25 yamaguch
837 1.25 yamaguch $DEBUG && dump
838 1.25 yamaguch cleanup
839 1.25 yamaguch }
840 1.25 yamaguch
841 1.28 yamaguch atf_test_case pppoe_mtu cleanup
842 1.28 yamaguch pppoe_mtu_head()
843 1.28 yamaguch {
844 1.28 yamaguch
845 1.28 yamaguch atf_set "descr" "Test for mtu"
846 1.28 yamaguch atf_set "require.progs" "rump_server"
847 1.28 yamaguch }
848 1.28 yamaguch
849 1.28 yamaguch pppoe_mtu_body()
850 1.28 yamaguch {
851 1.28 yamaguch local auth=chap
852 1.28 yamaguch local cp="IPCP"
853 1.28 yamaguch setup
854 1.28 yamaguch
855 1.28 yamaguch export RUMP_SERVER=$SERVER
856 1.28 yamaguch atf_pppoectl pppoe0 \
857 1.28 yamaguch "hisauthname=$AUTHNAME" "hisauthsecret=$SECRET" \
858 1.28 yamaguch "hisauthproto=$auth" "myauthproto=none" \
859 1.28 yamaguch norechallenge
860 1.28 yamaguch atf_ifconfig pppoe0 mtu 1400
861 1.28 yamaguch atf_ifconfig pppoe0 up
862 1.28 yamaguch
863 1.28 yamaguch export RUMP_SERVER=$CLIENT
864 1.28 yamaguch atf_pppoectl pppoe0 \
865 1.28 yamaguch "myauthname=$AUTHNAME" "myauthsecret=$SECRET" \
866 1.28 yamaguch "myauthproto=$auth" "hisauthproto=none"
867 1.28 yamaguch atf_ifconfig pppoe0 mtu 1450
868 1.28 yamaguch atf_ifconfig pppoe0 up
869 1.28 yamaguch
870 1.28 yamaguch wait_for_opened $cp
871 1.28 yamaguch atf_ifconfig -w 10
872 1.28 yamaguch
873 1.28 yamaguch export RUMP_SERVER=$SERVER
874 1.28 yamaguch atf_check -s exit:0 -o match:'mtu 1400' rump.ifconfig pppoe0
875 1.28 yamaguch
876 1.28 yamaguch export RUMP_SERVER=$CLIENT
877 1.28 yamaguch atf_check -s exit:0 -o match:'mtu 1400' rump.ifconfig pppoe0
878 1.28 yamaguch
879 1.28 yamaguch # mtu can set to 1460 but it is not applied.
880 1.28 yamaguch atf_ifconfig pppoe0 mtu 1460
881 1.28 yamaguch atf_check -s exit:0 -o match:'mtu 1400' rump.ifconfig pppoe0
882 1.28 yamaguch
883 1.28 yamaguch export RUMP_SERVER=$SERVER
884 1.28 yamaguch atf_ifconfig pppoe0 mtu 1470
885 1.28 yamaguch atf_ifconfig pppoe0 down
886 1.28 yamaguch atf_ifconfig pppoe0 up
887 1.28 yamaguch wait_for_opened $cp
888 1.28 yamaguch atf_ifconfig -w 10
889 1.28 yamaguch
890 1.28 yamaguch # mtu 1460 is applied after LCP negotiation
891 1.28 yamaguch atf_check -s exit:0 -o match:'mtu 1460' rump.ifconfig pppoe0
892 1.28 yamaguch
893 1.28 yamaguch export RUMP_SERVER=$CLIENT
894 1.28 yamaguch atf_check -s exit:0 -o match:'mtu 1460' rump.ifconfig pppoe0
895 1.28 yamaguch
896 1.28 yamaguch rump.ifconfig pppoe0 mtu 1500
897 1.28 yamaguch atf_check -s exit:0 -o ignore \
898 1.28 yamaguch -e match:'SIOCSIFMTU: Invalid argument' \
899 1.28 yamaguch rump.ifconfig pppoe0 mtu 1501
900 1.28 yamaguch }
901 1.28 yamaguch
902 1.28 yamaguch pppoe_mtu_cleanup()
903 1.28 yamaguch {
904 1.28 yamaguch
905 1.28 yamaguch $DEBUG && dump
906 1.28 yamaguch cleanup
907 1.28 yamaguch }
908 1.28 yamaguch
909 1.1 ozaki atf_init_test_cases()
910 1.1 ozaki {
911 1.18 ozaki
912 1.18 ozaki atf_add_test_case pppoe_create_destroy
913 1.22 yamaguch atf_add_test_case pppoe_params
914 1.5 ozaki atf_add_test_case pppoe_pap
915 1.5 ozaki atf_add_test_case pppoe_chap
916 1.7 knakahar atf_add_test_case pppoe6_pap
917 1.7 knakahar atf_add_test_case pppoe6_chap
918 1.25 yamaguch atf_add_test_case pppoe_passiveauthproto_pap
919 1.25 yamaguch atf_add_test_case pppoe_passiveauthproto_chap
920 1.28 yamaguch atf_add_test_case pppoe_mtu
921 1.1 ozaki }
922