From 16e52c3b9031fc8cf78bd932d88ebe751f37edcb Mon Sep 17 00:00:00 2001 From: billz Date: Mon, 24 Nov 2025 11:03:03 +0100 Subject: [PATCH] Remove stale wpa_supplicant socket and restart daemon manually --- src/RaspAP/Networking/Hotspot/WiFiManager.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/RaspAP/Networking/Hotspot/WiFiManager.php b/src/RaspAP/Networking/Hotspot/WiFiManager.php index 2232d57e..03f30782 100644 --- a/src/RaspAP/Networking/Hotspot/WiFiManager.php +++ b/src/RaspAP/Networking/Hotspot/WiFiManager.php @@ -85,6 +85,10 @@ class WiFiManager $cacheKey, function () use ($iface) { $stdout = shell_exec("sudo iw dev $iface scan"); + sleep(1); + if ($stdout === null) { + return []; + } return preg_split("/\n/", $stdout); } ); @@ -184,7 +188,6 @@ class WiFiManager if (preg_match('/ESSID:\"([^"]+)\"/i', $line, $iwconfig_ssid)) { $ssid=hexSequence2lower($iwconfig_ssid[1]); $networks[$ssid]['connected'] = true; - //$check=detectCaptivePortal($_SESSION['wifi_client_interface']); $networks[$ssid]["portal-url"]=$check["URL"]; } } @@ -251,7 +254,9 @@ class WiFiManager { $iface = $_SESSION['wifi_client_interface']; if ($force == true) { - $cmd = "sudo /sbin/wpa_supplicant -i $unescapedIface -c /etc/wpa_supplicant/wpa_supplicant.conf -B 2>&1"; + $cmd = "sudo rm -f /var/run/wpa_supplicant/" . $iface; + $result = shell_exec($cmd); + $cmd = "sudo /sbin/wpa_supplicant -i $iface -c /etc/wpa_supplicant/wpa_supplicant.conf -B 2>&1"; $result = shell_exec($cmd); } $cmd = "sudo wpa_cli -i $iface reconfigure";