From 3d5b356ac0b7434292b2b814bd723be31e3139c8 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Tue, 27 Aug 2013 02:00:39 +0300 Subject: [PATCH] tests: Wait for all 4-way handshake pairs in test_ibss_rsn The handshake between STA2 and STA1 was not tracked previously. For completeness, include that in the list of handshakes that are explicitly waited for to complete prior to starting the connectivity tests. Since all key setup should be done at this point, remove the extra wait before the last connectivity test between STA1 and STA2. Signed-hostap: Jouni Malinen --- tests/hwsim/test_ibss.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/tests/hwsim/test_ibss.py b/tests/hwsim/test_ibss.py index d9a95dacf..329702e70 100644 --- a/tests/hwsim/test_ibss.py +++ b/tests/hwsim/test_ibss.py @@ -29,6 +29,19 @@ def wait_4way_handshake(dev1, dev2): if ev is None: raise Exception("4-way handshake in IBSS timed out") +def wait_4way_handshake2(dev1, dev2, dev3): + logger.info(dev1.ifname + " waiting for 4-way handshake completion with " + dev2.ifname + " " + dev2.p2p_interface_addr() + " and " + dev3.p2p_interface_addr()) + ev = dev1.wait_event(["IBSS-RSN-COMPLETED " + dev2.p2p_interface_addr(), + "IBSS-RSN-COMPLETED " + dev3.p2p_interface_addr()], + timeout=20) + if ev is None: + raise Exception("4-way handshake in IBSS timed out") + ev = dev1.wait_event(["IBSS-RSN-COMPLETED " + dev2.p2p_interface_addr(), + "IBSS-RSN-COMPLETED " + dev3.p2p_interface_addr()], + timeout=20) + if ev is None: + raise Exception("4-way handshake in IBSS timed out") + def add_ibss(dev, ssid, psk=None, proto=None, key_mgmt=None, pairwise=None, group=None): id = dev.add_network() dev.set_network(id, "mode", "1") @@ -70,11 +83,10 @@ def test_ibss_rsn(dev): connect_ibss_cmd(dev[2], id) wait_ibss_connection(dev[2]) wait_4way_handshake(dev[0], dev[2]) - wait_4way_handshake(dev[2], dev[0]) + wait_4way_handshake2(dev[2], dev[0], dev[1]) # Allow some time for all peers to complete key setup time.sleep(3) hwsim_utils.test_connectivity(dev[0].ifname, dev[1].ifname) hwsim_utils.test_connectivity(dev[0].ifname, dev[2].ifname) - time.sleep(2) hwsim_utils.test_connectivity(dev[1].ifname, dev[2].ifname)