if "FAIL" not in dev[0].request("SET_NETWORK %d bssid_blacklist %s" % (id, val)):
raise Exception("Invalid bssid_blacklist value accepted")
+def test_wpas_ctrl_network_oom(dev):
+ """wpa_supplicant ctrl_iface network OOM in string parsing"""
+ id = dev[0].add_network()
+
+ tests = [ ('"foo"', 1, 'dup_binstr;wpa_config_set'),
+ ('P"foo"', 1, 'dup_binstr;wpa_config_set'),
+ ('P"foo"', 2, 'wpa_config_set'),
+ ('112233', 1, 'wpa_config_set') ]
+ for val,count,func in tests:
+ with alloc_fail(dev[0], count, func):
+ if "FAIL" not in dev[0].request("SET_NETWORK " + str(id) + ' ssid ' + val):
+ raise Exception("Unexpected success for SET_NETWORK during OOM")
+
def test_wpas_ctrl_many_networks(dev, apdev):
"""wpa_supplicant ctrl_iface LIST_NETWORKS with huge number of networks"""
for i in range(1000):