From a71a3d6d466e598d241ef219bf922d846264d229 Mon Sep 17 00:00:00 2001 From: Avraham Stern Date: Mon, 5 Sep 2016 17:33:06 +0300 Subject: [PATCH] tests: Fix p2p_ext_vendor_elem_assoc test with P2P Device interface For configurations that use a dedicated P2P Device interface, which mandates that a separate interface is used for the P2P group, vendor specific IE's must be added to the VENDOR_ELEM_P2P_* frame types in order to be used by the P2P group interface. The VENDOR_ELEM_ASSOC_REQ (13) parameter would need to be issued on the group interface which would be challenging to do due to timing in case a separate group interface gets used. In case a dedicated P2P Device interface is used, don't include a test for VENDOR_ELEM_ASSOC_REQ to avoid failing this part of the test case. Signed-off-by: Avraham Stern --- tests/hwsim/test_p2p_ext.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/hwsim/test_p2p_ext.py b/tests/hwsim/test_p2p_ext.py index 9d2d5698a..82b7658a0 100644 --- a/tests/hwsim/test_p2p_ext.py +++ b/tests/hwsim/test_p2p_ext.py @@ -336,11 +336,15 @@ def test_p2p_ext_vendor_elem_assoc(dev, apdev, params): def _test_p2p_ext_vendor_elem_assoc(dev, apdev, params): addr0 = dev[0].p2p_dev_addr() addr1 = dev[1].p2p_dev_addr() + + res = dev[0].get_driver_status() + p2p_device = True if (int(res['capa.flags'], 0) & 0x20000000) else False + if "OK" not in dev[0].request("VENDOR_ELEM_ADD 11 dd050011223308"): raise Exception("VENDOR_ELEM_ADD failed") if "OK" not in dev[1].request("VENDOR_ELEM_ADD 12 dd050011223309"): raise Exception("VENDOR_ELEM_ADD failed") - if "OK" not in dev[0].request("VENDOR_ELEM_ADD 13 dd05001122330a"): + if not p2p_device and "OK" not in dev[0].request("VENDOR_ELEM_ADD 13 dd05001122330a"): raise Exception("VENDOR_ELEM_ADD failed") dev[0].p2p_listen() dev[1].p2p_listen() @@ -355,7 +359,7 @@ def _test_p2p_ext_vendor_elem_assoc(dev, apdev, params): "wlan.fc.type_subtype == 0x00", wait=False) if "Vendor Specific Data: 3308" not in out: raise Exception("Vendor element (P2P) not found from Association Request frame") - if "Vendor Specific Data: 330a" not in out: + if not p2p_device and "Vendor Specific Data: 330a" not in out: raise Exception("Vendor element (non-P2P) not found from Association Request frame") out = run_tshark(os.path.join(params['logdir'], "hwsim0.pcapng"),