Merge "/bin/wifi: restart dhclient on wpa_supplicant reconfigure."
diff --git a/wifi/quantenna.py b/wifi/quantenna.py
index f3f96ef..bb541f5 100755
--- a/wifi/quantenna.py
+++ b/wifi/quantenna.py
@@ -54,11 +54,11 @@
def _set_link_state(hif, state):
- subprocess.check_output(['if' + state, hif])
+ subprocess.check_call(['if' + state, hif])
def _ifplugd_action(hif, state):
- subprocess.check_output(['/etc/ifplugd/ifplugd.action', hif, state])
+ subprocess.check_call(['/etc/ifplugd/ifplugd.action', hif, state])
def _parse_scan_result(line):
diff --git a/wifi/wifi.py b/wifi/wifi.py
index 94c0577..644f483 100755
--- a/wifi/wifi.py
+++ b/wifi/wifi.py
@@ -917,8 +917,12 @@
"Couldn't stop hostapd to start wpa_supplicant.")
if already_running:
+ subprocess.check_call(['ifdown', interface])
+ subprocess.check_call(['/etc/ifplugd/ifplugd.action', interface, 'down'])
if not _reconfigure_wpa_supplicant(interface):
raise utils.BinWifiException('Failed to reconfigure wpa_supplicant.')
+ subprocess.check_call(['ifup', interface])
+ subprocess.check_call(['/etc/ifplugd/ifplugd.action', interface, 'up'])
elif not _start_wpa_supplicant(interface, tmp_config_filename):
raise utils.BinWifiException(
'wpa_supplicant failed to start. Look at wpa_supplicant logs for '