tests: WPA2-PSK AP and no random numbers available
Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
aac1efec34
commit
bf7071bb0c
2 changed files with 33 additions and 1 deletions
|
@ -17,7 +17,7 @@ import subprocess
|
|||
import time
|
||||
|
||||
import hostapd
|
||||
from utils import HwsimSkip
|
||||
from utils import HwsimSkip, fail_test
|
||||
import hwsim_utils
|
||||
from wpasupplicant import WpaSupplicant
|
||||
|
||||
|
@ -1971,3 +1971,21 @@ def test_ap_wpa_ie_parsing(dev, apdev):
|
|||
dev[0].request("DISCONNECT")
|
||||
finally:
|
||||
dev[0].request("VENDOR_ELEM_REMOVE 13 *")
|
||||
|
||||
def test_ap_wpa2_psk_no_random(dev, apdev):
|
||||
"""WPA2-PSK AP and no random numbers available"""
|
||||
ssid = "test-wpa2-psk"
|
||||
passphrase = 'qwertyuiop'
|
||||
psk = '602e323e077bc63bd80307ef4745b754b0ae0a925c2638ecd13a794b9527b9e6'
|
||||
params = hostapd.wpa2_params(ssid=ssid)
|
||||
params['wpa_psk'] = psk
|
||||
hapd = hostapd.add_ap(apdev[0]['ifname'], params)
|
||||
with fail_test(hapd, 1, "wpa_gmk_to_gtk"):
|
||||
id = dev[0].connect(ssid, raw_psk=psk, scan_freq="2412",
|
||||
wait_connect=False)
|
||||
ev = dev[0].wait_event(["CTRL-EVENT-DISCONNECTED"], timeout=15)
|
||||
if ev is None:
|
||||
raise Exception("Disconnection event not reported")
|
||||
dev[0].request("DISCONNECT")
|
||||
dev[0].select_network(id, freq=2412)
|
||||
dev[0].wait_connected()
|
||||
|
|
|
@ -36,6 +36,20 @@ class alloc_fail(object):
|
|||
if self._dev.request("GET_ALLOC_FAIL") != "0:%s" % self._funcs:
|
||||
raise Exception("Allocation failure did not trigger")
|
||||
|
||||
class fail_test(object):
|
||||
def __init__(self, dev, count, funcs):
|
||||
self._dev = dev
|
||||
self._count = count
|
||||
self._funcs = funcs
|
||||
def __enter__(self):
|
||||
cmd = "TEST_FAIL %d:%s" % (self._count, self._funcs)
|
||||
if "OK" not in self._dev.request(cmd):
|
||||
raise HwsimSkip("TEST_FAIL not supported")
|
||||
def __exit__(self, type, value, traceback):
|
||||
if type is None:
|
||||
if self._dev.request("GET_FAIL") != "0:%s" % self._funcs:
|
||||
raise Exception("Test failure did not trigger")
|
||||
|
||||
def require_under_vm():
|
||||
with open('/proc/1/cmdline', 'r') as f:
|
||||
cmd = f.read()
|
||||
|
|
Loading…
Reference in a new issue