tests: Validate parsing and rejection of invalid WFD subelement
This is a regression test for wifi_display_subelem_hex() bounds checking issue. Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
49d13df63c
commit
e862968d18
1 changed files with 21 additions and 0 deletions
|
@ -229,3 +229,24 @@ def test_wifi_display_persistent_group(dev):
|
||||||
dev[0].request("SET wifi_display 0")
|
dev[0].request("SET wifi_display 0")
|
||||||
dev[1].request("SET wifi_display 0")
|
dev[1].request("SET wifi_display 0")
|
||||||
dev[2].request("SET wifi_display 0")
|
dev[2].request("SET wifi_display 0")
|
||||||
|
|
||||||
|
def test_wifi_display_invalid_subelem(dev):
|
||||||
|
"""Wi-Fi Display and invalid subelement parsing"""
|
||||||
|
addr1 = dev[1].p2p_dev_addr()
|
||||||
|
|
||||||
|
try:
|
||||||
|
enable_wifi_display(dev[0])
|
||||||
|
enable_wifi_display(dev[1])
|
||||||
|
dev[1].request("WFD_SUBELEM_SET 0 ffff00411c440028")
|
||||||
|
|
||||||
|
dev[1].p2p_listen()
|
||||||
|
dev[0].p2p_find(social=True)
|
||||||
|
ev = dev[0].wait_global_event(["P2P-DEVICE-FOUND"], timeout=10)
|
||||||
|
if ev is None:
|
||||||
|
raise Exception("Device discovery timed out")
|
||||||
|
if "wfd_dev_info=" in ev:
|
||||||
|
raise Exception("Invalid WFD subelement was shown")
|
||||||
|
|
||||||
|
finally:
|
||||||
|
dev[0].request("SET wifi_display 0")
|
||||||
|
dev[1].request("SET wifi_display 0")
|
||||||
|
|
Loading…
Reference in a new issue