3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2024-11-29 05:39:24 +01:00

auto-t: add H2E password identifier test

In order to support identifiers the test profiles needed to be
reworked due to hostapd allowing multiple password entires. You
cannot just call set_value() with a new entry as the old ones
still exist. Instead use a unique password for the identifier and
non-identifier use cases.

After adding this test the failure_test started failing due to
hostapd not starting up. This was due to the group being unsupported
but oddly only when hostapd was reloaded (running the test
individually worked). To fix this the group number was changed to 21
which hostapd does support but IWD does not.
This commit is contained in:
James Prestwood 2023-12-14 04:33:59 -08:00 committed by Denis Kenzior
parent da94b2c6a9
commit 60e165095a
5 changed files with 20 additions and 8 deletions

View File

@ -35,12 +35,23 @@ class Test(unittest.TestCase):
wd.wait_for_object_condition(ordered_network.network_object, condition) wd.wait_for_object_condition(ordered_network.network_object, condition)
def test_SAE(self): def test_SAE(self):
IWD.copy_to_storage("ssidSAE.psk.default", name="ssidSAE.psk")
self.hostapd.wait_for_event("AP-ENABLED") self.hostapd.wait_for_event("AP-ENABLED")
wd = IWD(True) wd = IWD(True)
self.validate_connection(wd) self.validate_connection(wd)
def test_SAE_H2E(self): def test_SAE_H2E(self):
IWD.copy_to_storage("ssidSAE.psk.default", name="ssidSAE.psk")
self.hostapd.set_value('sae_pwe', '1')
self.hostapd.set_value('sae_groups', '20')
self.hostapd.reload()
self.hostapd.wait_for_event("AP-ENABLED")
wd = IWD(True)
self.validate_connection(wd)
def test_SAE_H2E_password_identifier(self):
IWD.copy_to_storage("ssidSAE.psk.identifier", name="ssidSAE.psk")
self.hostapd.set_value('sae_pwe', '1') self.hostapd.set_value('sae_pwe', '1')
self.hostapd.set_value('sae_groups', '20') self.hostapd.set_value('sae_groups', '20')
self.hostapd.reload() self.hostapd.reload()
@ -51,15 +62,12 @@ class Test(unittest.TestCase):
def setUp(self): def setUp(self):
self.hostapd.default() self.hostapd.default()
def tearDown(self):
IWD.clear_storage()
@classmethod @classmethod
def setUpClass(cls): def setUpClass(cls):
cls.hostapd = HostapdCLI(config='ssidSAE.conf') cls.hostapd = HostapdCLI(config='ssidSAE.conf')
IWD.copy_to_storage('ssidSAE.psk')
pass
@classmethod
def tearDownClass(cls):
IWD.clear_storage()
if __name__ == '__main__': if __name__ == '__main__':
unittest.main(exit=True) unittest.main(exit=True)

View File

@ -37,7 +37,7 @@ class Test(unittest.TestCase):
self.validate_connection(wd, 'InvalidSecret') self.validate_connection(wd, 'InvalidSecret')
def test_no_supported_groups(self): def test_no_supported_groups(self):
self.hostapd.set_value('sae_groups', '1') self.hostapd.set_value('sae_groups', '21')
self.hostapd.reload() self.hostapd.reload()
wd = IWD(True) wd = IWD(True)

View File

@ -5,7 +5,8 @@ ssid=ssidSAE
wpa=2 wpa=2
wpa_key_mgmt=SAE wpa_key_mgmt=SAE
wpa_pairwise=CCMP wpa_pairwise=CCMP
sae_password=secret123|mac=ff:ff:ff:ff:ff:ff sae_password=secret123
sae_password=withidentifier|id=myidentifier
sae_groups=19 sae_groups=19
ieee80211w=2 ieee80211w=2
sae_pwe=0 sae_pwe=0

View File

@ -0,0 +1,3 @@
[Security]
Passphrase=withidentifier
PasswordIdentifier=myidentifier