ev = dev[0].wait_event(["P2P-GROUP-FORMATION-FAILURE"], timeout=5)
if ev is None:
raise Exception("Group formation failure timed out")
+
+def test_grpform_reject(dev):
+ """User rejecting group formation attempt by a P2P peer"""
+ addr0 = dev[0].p2p_dev_addr()
+ dev[0].p2p_listen()
+ dev[1].p2p_go_neg_init(addr0, None, "pbc")
+ ev = dev[0].wait_global_event(["P2P-GO-NEG-REQUEST"], timeout=15)
+ if ev is None:
+ raise Exception("GO Negotiation timed out")
+ if "FAIL" in dev[0].global_request("P2P_REJECT " + ev.split(' ')[1]):
+ raise Exception("P2P_REJECT failed")
+ dev[1].request("P2P_STOP_FIND")
+ dev[1].p2p_go_neg_init(addr0, None, "pbc")
+ ev = dev[1].wait_global_event(["GO-NEG-FAILURE"], timeout=10)
+ if ev is None:
+ raise Exception("Rejection not reported")
+ if "status=11" not in ev:
+ raise Exception("Unexpected status code in rejection")