Lines Matching refs:dev
17 def test_persistent_group(dev): argument
19 form(dev[0], dev[1])
20 invite_from_cli(dev[0], dev[1])
21 invite_from_go(dev[0], dev[1])
25 for n in dev[0].list_networks(p2p=True):
31 clients = dev[0].global_request("GET_NETWORK " + id + " p2p_client_list").rstrip()
32 if dev[1].p2p_dev_addr() not in clients:
34 if "FAIL" not in dev[1].request("SELECT_NETWORK " + str(id)):
36 if "FAIL" not in dev[1].request("SELECT_NETWORK 1234567"):
38 if "FAIL" not in dev[1].request("ENABLE_NETWORK " + str(id)):
40 if "FAIL" not in dev[1].request("ENABLE_NETWORK 1234567"):
42 if "FAIL" not in dev[1].request("DISABLE_NETWORK " + str(id)):
44 if "FAIL" not in dev[1].request("DISABLE_NETWORK 1234567"):
46 if "FAIL" not in dev[1].request("REMOVE_NETWORK 1234567"):
48 dev[1].global_request("REMOVE_NETWORK all")
49 if len(dev[1].list_networks(p2p=True)) > 0:
51 invite(dev[0], dev[1])
52 ev = dev[0].wait_global_event(["P2P-INVITATION-RESULT"], timeout=10)
57 clients = dev[0].request("GET_NETWORK " + id + " p2p_client_list").rstrip()
58 if dev[1].p2p_dev_addr() in clients:
62 def test_persistent_group2(dev): argument
64 form(dev[0], dev[1], reverse_init=True)
65 invite_from_cli(dev[0], dev[1])
66 invite_from_go(dev[0], dev[1])
69 def test_persistent_group3(dev): argument
71 form(dev[0], dev[1])
72 dev[1].request("BSS_FLUSH 0")
73 invite_from_cli(dev[0], dev[1])
74 dev[1].request("BSS_FLUSH 0")
75 invite_from_go(dev[0], dev[1])
77 def test_persistent_group_per_sta_psk(dev): argument
79 addr0 = dev[0].p2p_dev_addr()
80 addr1 = dev[1].p2p_dev_addr()
81 addr2 = dev[2].p2p_dev_addr()
82 dev[0].global_request("P2P_SET per_sta_psk 1")
84 [i_res, r_res] = go_neg_pin_authorized_persistent(i_dev=dev[0], i_intent=15,
85 r_dev=dev[1], r_intent=0)
90 pin = dev[2].wps_read_pin()
91 dev[0].p2p_go_authorize_client(pin)
93 c_res = dev[2].p2p_connect_group(addr0, pin, timeout=60, social=social,
99 dev[0].wait_sta(addr=dev[2].p2p_interface_addr(), wait_4way_hs=True)
100 hwsim_utils.test_connectivity_p2p(dev[1], dev[2])
103 dev[0].remove_group()
104 dev[1].wait_go_ending_session()
105 dev[2].wait_go_ending_session()
106 dev[0].wait_sta_disconnect()
107 dev[0].wait_sta_disconnect()
108 dev[0].dump_monitor()
109 dev[1].dump_monitor()
110 dev[2].dump_monitor()
113 networks = dev[i].list_networks(p2p=True)
121 dev[i].request("BSS_FLUSH 0")
122 dev[i].scan(freq="2412", only_new=True)
123 …if "OK" not in dev[i].global_request("P2P_GROUP_ADD persistent=" + networks[0]['id'] + " freq=2412…
125 ev = dev[i].wait_global_event(["P2P-GROUP-STARTED"], timeout=30)
128 dev[i].group_form_result(ev)
130 dev[0].wait_sta()
131 dev[0].wait_sta()
134 dev[2].remove_group()
135 ev = dev[2].wait_global_event(["P2P-GROUP-REMOVED"], timeout=3)
138 dev[0].wait_sta_disconnect(addr=dev[2].p2p_interface_addr())
139 if not dev[2].discover_peer(addr0, social=True):
141 dev[2].dump_monitor()
142 peer = dev[2].get_peer(addr0)
143 dev[2].global_request("P2P_GROUP_ADD persistent=" + peer['persistent'] + " freq=2412")
144 ev = dev[2].wait_global_event(["P2P-GROUP-STARTED"], timeout=30)
147 cli_res = dev[2].group_form_result(ev)
150 dev[0].wait_sta(addr=dev[2].p2p_interface_addr(), wait_4way_hs=True)
151 hwsim_utils.test_connectivity_p2p(dev[1], dev[2])
154 dev[0].global_request("P2P_REMOVE_CLIENT iface=" + dev[2].p2p_interface_addr())
155 dev[2].wait_go_ending_session()
156 dev[0].wait_sta_disconnect(addr=dev[2].p2p_interface_addr())
159 if not dev[2].discover_peer(addr0, social=True):
161 dev[2].dump_monitor()
162 peer = dev[2].get_peer(addr0)
163 dev[2].global_request("P2P_GROUP_ADD persistent=" + peer['persistent'] + " freq=2412")
164 ev = dev[2].wait_global_event(["P2P-GROUP-STARTED",
170 dev[0].wait_sta(addr=dev[2].p2p_interface_addr(), wait_4way_hs=True)
173 dev[0].global_request("P2P_REMOVE_CLIENT " + addr2)
174 dev[0].wait_sta_disconnect(addr=dev[2].p2p_interface_addr())
175 dev[2].wait_go_ending_session()
178 if not dev[2].discover_peer(addr0, social=True):
180 dev[2].dump_monitor()
181 peer = dev[2].get_peer(addr0)
182 dev[2].global_request("P2P_GROUP_ADD persistent=" + peer['persistent'] + " freq=2412")
183 ev = dev[2].wait_global_event(["P2P-GROUP-STARTED",
191 dev[0].global_request("P2P_REMOVE_CLIENT " + addr1)
192 dev[0].wait_sta_disconnect(addr=dev[1].p2p_interface_addr())
193 dev[1].wait_go_ending_session()
196 dev[0].remove_group()
197 dev[0].dump_monitor()
200 dev[0].global_request("SET persistent_reconnect 1")
201 dev[0].p2p_listen()
202 if not dev[1].discover_peer(addr0, social=True):
204 dev[1].dump_monitor()
205 peer = dev[1].get_peer(addr0)
206 dev[1].global_request("P2P_INVITE persistent=" + peer['persistent'] + " peer=" + addr0)
207 ev = dev[0].wait_global_event(["P2P-GROUP-STARTED"], timeout=30)
208 dev[0].group_form_result(ev)
209 ev = dev[1].wait_global_event(["P2P-GROUP-STARTED",
215 dev[0].dump_monitor()
218 dev[0].remove_group()
219 dev[0].dump_monitor()
221 def test_persistent_group_invite_removed_client(dev): argument
223 addr0 = dev[0].p2p_dev_addr()
224 addr1 = dev[1].p2p_dev_addr()
225 dev[0].request("P2P_SET per_sta_psk 1")
227 [i_res, r_res] = go_neg_pin_authorized_persistent(i_dev=dev[0], i_intent=15,
228 r_dev=dev[1], r_intent=0)
233 dev[0].global_request("P2P_REMOVE_CLIENT " + addr1)
234 dev[0].wait_sta_disconnect(dev[1].p2p_interface_addr())
235 dev[1].wait_go_ending_session()
238 dev[1].p2p_listen()
239 if not dev[0].discover_peer(addr1, social=True):
241 dev[0].global_request("P2P_INVITE group=" + dev[0].group_ifname + " peer=" + addr1)
242 ev = dev[1].wait_global_event(["P2P-INVITATION-RECEIVED"], timeout=10)
248 dev[1].global_request("P2P_GROUP_ADD " + persistent)
249 ev = dev[1].wait_global_event(["P2P-PERSISTENT-PSK-FAIL"], timeout=30)
253 ev = dev[1].wait_global_event(["P2P-GROUP-REMOVED"], timeout=10)
258 dev[1].global_request("REMOVE_NETWORK " + id)
261 dev[0].dump_monitor()
262 dev[1].p2p_listen()
263 if not dev[0].discover_peer(addr1, social=True):
265 dev[0].global_request("P2P_INVITE group=" + dev[0].group_ifname + " peer=" + addr1)
266 ev = dev[1].wait_global_event(["P2P-INVITATION-RECEIVED"], timeout=10)
271 pin = dev[1].wps_read_pin()
272 dev[0].p2p_go_authorize_client(pin)
273 c_res = dev[1].p2p_connect_group(addr0, pin, timeout=60, social=True,
279 dev[0].wait_sta(addr=dev[1].p2p_interface_addr(), wait_4way_hs=True)
280 hwsim_utils.test_connectivity_p2p(dev[0], dev[1])
282 terminate_group(dev[0], dev[1])
285 def test_persistent_group_channel(dev): argument
287 form(dev[0], dev[1], test_data=False)
290 invite(dev[1], dev[0], "freq=2427")
291 [go_res, cli_res] = check_result(dev[0], dev[1])
294 terminate_group(dev[0], dev[1])
297 invite(dev[0], dev[1], "freq=2432")
298 [go_res, cli_res] = check_result(dev[0], dev[1])
301 terminate_group(dev[0], dev[1])
304 invite(dev[1], dev[0], "pref=2417")
305 [go_res, cli_res] = check_result(dev[0], dev[1])
308 terminate_group(dev[0], dev[1])
311 def test_persistent_group_and_role_change(dev): argument
313 form(dev[0], dev[1])
316 dev[1].p2p_start_go()
317 dev[1].remove_group()
318 dev[1].dump_monitor()
321 invite_from_go(dev[0], dev[1])
323 def test_persistent_go_client_list(dev): argument
325 addr0 = dev[0].p2p_dev_addr()
326 addr1 = dev[1].p2p_dev_addr()
327 addr2 = dev[2].p2p_dev_addr()
329 res = dev[0].p2p_start_go(persistent=True)
331 for n in dev[0].list_networks(p2p=True):
338 connect_cli(dev[0], dev[1], social=True, freq=res['freq'])
339 clients = dev[0].global_request("GET_NETWORK " + id + " p2p_client_list").rstrip()
342 connect_cli(dev[0], dev[2], social=True, freq=res['freq'])
343 clients = dev[0].global_request("GET_NETWORK " + id + " p2p_client_list").rstrip()
347 peer = dev[1].get_peer(res['go_dev_addr'])
348 dev[1].remove_group()
349 dev[1].global_request("P2P_GROUP_ADD persistent=" + peer['persistent'])
350 ev = dev[1].wait_global_event(["P2P-GROUP-STARTED"], timeout=30)
353 dev[1].group_form_result(ev)
354 clients = dev[0].global_request("GET_NETWORK " + id + " p2p_client_list").rstrip()
358 dev[2].remove_group()
359 dev[1].remove_group()
360 dev[0].remove_group()
362 clients = dev[0].global_request("GET_NETWORK " + id + " p2p_client_list").rstrip()
366 dev[1].p2p_listen()
367 dev[2].p2p_listen()
368 dev[0].request("P2P_FLUSH")
369 dev[0].discover_peer(addr1, social=True)
370 peer = dev[0].get_peer(addr1)
374 dev[0].discover_peer(addr2, social=True)
375 peer = dev[0].get_peer(addr2)
380 def test_persistent_group_in_grpform(dev): argument
382 addr0 = dev[0].p2p_dev_addr()
383 addr1 = dev[1].p2p_dev_addr()
384 form(dev[0], dev[1])
385 dev[1].p2p_listen()
386 if not dev[0].discover_peer(addr1, social=True):
388 peer = dev[0].get_peer(addr1)
392 pin = dev[1].wps_read_pin()
393 dev[1].p2p_go_neg_auth(addr0, pin, "display", go_intent=0)
394 i_res = dev[0].p2p_go_neg_init(addr1, pin, "enter", timeout=20,
397 r_res = dev[1].p2p_go_neg_auth_result()
402 def test_persistent_group_without_persistent_reconnect(dev): argument
404 form(dev[0], dev[1])
405 dev[0].dump_monitor()
406 dev[1].dump_monitor()
409 invite(dev[1], dev[0], persistent_reconnect=False)
411 ev = dev[0].wait_global_event(["P2P-INVITATION-RECEIVED"], timeout=15)
417 ev2 = dev[1].wait_global_event(["P2P-INVITATION-RESULT"], timeout=15)
422 dev[1].p2p_listen()
432 … if "FAIL" not in dev[0].global_request("P2P_INVITE persistent=" + id + " peer=" + sa + " freq=0"):
434 … if "FAIL" not in dev[0].global_request("P2P_INVITE persistent=" + id + " peer=" + sa + " pref=0"):
437 …if "OK" not in dev[0].global_request("P2P_INVITE persistent=" + id + " peer=" + sa + " freq=" + fr…
439 [go_res, cli_res] = check_result(dev[0], dev[1])
444 terminate_group(dev[0], dev[1])
445 dev[0].dump_monitor()
446 dev[1].dump_monitor()
449 invite(dev[0], dev[1], persistent_reconnect=False)
451 ev = dev[1].wait_global_event(["P2P-INVITATION-RECEIVED"], timeout=15)
457 ev2 = dev[0].wait_global_event(["P2P-INVITATION-RESULT"], timeout=15)
462 dev[0].p2p_listen()
471 …if "OK" not in dev[1].global_request("P2P_INVITE persistent=" + id + " peer=" + sa + " freq=" + fr…
473 [go_res, cli_res] = check_result(dev[0], dev[1])
474 terminate_group(dev[0], dev[1])
477 def test_persistent_group_already_running(dev): argument
479 form(dev[0], dev[1])
480 peer = dev[1].get_peer(dev[0].p2p_dev_addr())
482 dev[0].dump_monitor()
483 dev[1].dump_monitor()
484 networks = dev[0].list_networks(p2p=True)
489 …if "OK" not in dev[0].global_request("P2P_GROUP_ADD persistent=" + networks[0]['id'] + " freq=" + …
491 invite_from_cli(dev[0], dev[1])
494 def test_persistent_group_add_cli_chan(dev): argument
497 dev[0].request("SET p2p_add_cli_chan 1")
498 dev[1].request("SET p2p_add_cli_chan 1")
499 form(dev[0], dev[1])
500 dev[1].request("BSS_FLUSH 0")
501 dev[1].scan(freq="2412", only_new=True)
502 dev[1].scan(freq="2437", only_new=True)
503 dev[1].scan(freq="2462", only_new=True)
504 dev[1].request("BSS_FLUSH 0")
505 invite_from_cli(dev[0], dev[1])
506 invite_from_go(dev[0], dev[1])
508 dev[0].request("SET p2p_add_cli_chan 0")
509 dev[1].request("SET p2p_add_cli_chan 0")
512 def test_persistent_invalid_group_add(dev): argument
514 id = dev[0].add_network()
515 if "FAIL" not in dev[0].global_request("P2P_GROUP_ADD persistent=12345"):
517 if "FAIL" not in dev[0].global_request("P2P_GROUP_ADD persistent=%d" % id):
519 if "FAIL" not in dev[0].global_request("P2P_GROUP_ADD foo"):
522 def test_persistent_group_missed_inv_resp(dev): argument
524 form(dev[0], dev[1])
525 addr = dev[1].p2p_dev_addr()
526 dev[1].global_request("SET persistent_reconnect 1")
527 dev[1].p2p_listen()
528 if not dev[0].discover_peer(addr, social=True):
530 dev[0].dump_monitor()
531 peer = dev[0].get_peer(addr)
533 if "FAIL" in dev[0].request("SET ext_mgmt_frame_handling 1"):
536 dev[0].global_request(cmd)
537 rx_msg = dev[0].mgmt_rx()
542 if "FAIL" in dev[0].request("SET ext_mgmt_frame_handling 0"):
546 dev[1].p2p_listen()
547 ev = dev[0].wait_global_event(["P2P-INVITATION-RESULT"], timeout=15)
551 dev[1].p2p_stop_find()
554 ev = dev[1].wait_global_event(["P2P-GROUP-STARTED",
561 dev[0].group_form_result(ev)
563 ev = dev[0].wait_global_event(["P2P-GROUP-STARTED"], timeout=5)
566 dev[0].group_form_result(ev)
568 terminate_group(dev[0], dev[1])
571 def test_persistent_group_profile_add(dev): argument
574 id = dev[0].p2pdev_add_network()
575 dev[0].p2pdev_set_network_quoted(id, "ssid", "DIRECT-ab")
576 dev[0].p2pdev_set_network_quoted(id, "psk", passphrase)
577 dev[0].p2pdev_set_network(id, "mode", "3")
578 dev[0].p2pdev_set_network(id, "disabled", "2")
579 dev[0].p2p_start_go(persistent=id, freq=2412)
581 pin = dev[1].wps_read_pin()
582 dev[0].p2p_go_authorize_client(pin)
583 res = dev[1].p2p_connect_group(dev[0].p2p_dev_addr(), pin, timeout=60,
588 dev[0].remove_group()
589 dev[1].wait_go_ending_session()
592 def test_persistent_group_cancel_on_cli(dev): argument
594 dev[0].global_request("SET p2p_no_group_iface 0")
595 dev[1].global_request("SET p2p_no_group_iface 0")
596 form(dev[0], dev[1])
598 invite_from_go(dev[0], dev[1], terminate=False)
599 if "FAIL" not in dev[1].global_request("P2P_CANCEL"):
601 if "FAIL" not in dev[0].global_request("P2P_CANCEL"):
603 terminate_group(dev[0], dev[1])
605 invite_from_cli(dev[0], dev[1], terminate=False)
606 if "FAIL" not in dev[1].global_request("P2P_CANCEL"):
608 if "FAIL" not in dev[0].global_request("P2P_CANCEL"):
610 terminate_group(dev[0], dev[1])
613 def test_persistent_group_cancel_on_cli2(dev): argument
615 form(dev[0], dev[1])
616 invite_from_go(dev[0], dev[1], terminate=False)
617 if "FAIL" not in dev[1].global_request("P2P_CANCEL"):
619 if "FAIL" not in dev[0].global_request("P2P_CANCEL"):
621 terminate_group(dev[0], dev[1])
623 invite_from_cli(dev[0], dev[1], terminate=False)
624 if "FAIL" not in dev[1].global_request("P2P_CANCEL"):
626 if "FAIL" not in dev[0].global_request("P2P_CANCEL"):
628 terminate_group(dev[0], dev[1])
631 def test_persistent_group_cancel_on_cli3(dev): argument
633 dev[0].global_request("SET p2p_no_group_iface 0")
634 dev[1].global_request("SET p2p_no_group_iface 1")
635 dev[1].p2p_ext_listen(30,30)
636 form(dev[0], dev[1])
638 invite_from_go(dev[0], dev[1], terminate=False)
639 if "FAIL" not in dev[1].global_request("P2P_CANCEL"):
641 if "FAIL" not in dev[0].global_request("P2P_CANCEL"):
643 terminate_group(dev[0], dev[1])
645 invite_from_cli(dev[0], dev[1], terminate=False)
646 if "FAIL" not in dev[1].global_request("P2P_CANCEL"):
648 if "FAIL" not in dev[0].global_request("P2P_CANCEL"):
650 terminate_group(dev[0], dev[1])
653 def test_persistent_group_peer_dropped(dev): argument
655 form(dev[0], dev[1], reverse_init=True)
656 invite_from_cli(dev[0], dev[1])
659 dev[0].global_request("REMOVE_NETWORK all")
660 invite(dev[1], dev[0])
661 ev = dev[1].wait_global_event(["P2P-INVITATION-RESULT"], timeout=10)
666 networks = dev[1].list_networks(p2p=True)
671 form(dev[0], dev[1], reverse_init=True)
674 def test_persistent_group_peer_dropped2(dev): argument
676 form(dev[0], dev[1])
677 invite_from_go(dev[0], dev[1])
680 dev[1].global_request("REMOVE_NETWORK all")
681 invite(dev[0], dev[1])
682 ev = dev[0].wait_global_event(["P2P-INVITATION-RESULT"], timeout=10)
687 networks = dev[1].list_networks(p2p=True)
692 form(dev[0], dev[1])
694 def test_persistent_group_peer_dropped3(dev): argument
696 form(dev[0], dev[1], reverse_init=True)
697 invite_from_cli(dev[0], dev[1])
700 dev[0].global_request("REMOVE_NETWORK all")
701 invite(dev[1], dev[0], use_listen=False)
702 ev = dev[1].wait_global_event(["P2P-INVITATION-RESULT"], timeout=10)
707 networks = dev[1].list_networks(p2p=True)
713 form(dev[0], dev[1], reverse_init=True, r_listen=False)