mirror of
https://github.com/Telecominfraproject/wlan-ap.git
synced 2025-11-01 02:48:18 +00:00
hostapd: backport 2 hot-reload fixes
Signed-off-by: John Crispin <john@phrozen.org>
This commit is contained in:
@@ -34,7 +34,7 @@ function find_reusable_wdev(phyidx)
|
|||||||
if (!__phy_is_fullmac(phyidx))
|
if (!__phy_is_fullmac(phyidx))
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
data = nl80211.request(
|
let data = nl80211.request(
|
||||||
nl80211.const.NL80211_CMD_GET_INTERFACE,
|
nl80211.const.NL80211_CMD_GET_INTERFACE,
|
||||||
nl80211.const.NLM_F_DUMP,
|
nl80211.const.NLM_F_DUMP,
|
||||||
{ wiphy: phyidx });
|
{ wiphy: phyidx });
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/env ucode
|
#!/usr/bin/env ucode
|
||||||
'use strict';
|
'use strict';
|
||||||
import { vlist_new, is_equal, wdev_create, wdev_remove } from "/usr/share/hostap/common.uc";
|
import { vlist_new, is_equal, wdev_create, wdev_remove } from "/usr/share/hostap/common.uc";
|
||||||
import { readfile, writefile, basename, glob } from "fs";
|
import { readfile, writefile, basename, readlink, glob } from "fs";
|
||||||
|
|
||||||
let keep_devices = {};
|
let keep_devices = {};
|
||||||
let phy = shift(ARGV);
|
let phy = shift(ARGV);
|
||||||
@@ -106,6 +106,9 @@ function add_existing(phy, config)
|
|||||||
if (config[wdev])
|
if (config[wdev])
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
if (basename(readlink(`/sys/class/net/${wdev}/phy80211`)) != phy)
|
||||||
|
continue;
|
||||||
|
|
||||||
if (trim(readfile(`/sys/class/net/${wdev}/operstate`)) == "down")
|
if (trim(readfile(`/sys/class/net/${wdev}/operstate`)) == "down")
|
||||||
config[wdev] = {};
|
config[wdev] = {};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
From 4f17c6e2ca90130f86783e87927019525af719ba Mon Sep 17 00:00:00 2001
|
From 87450a717bf0e9e82566c89debb60e6ba7d4fe4a Mon Sep 17 00:00:00 2001
|
||||||
From: Felix Fietkau <nbd@nbd.name>
|
From: Felix Fietkau <nbd@nbd.name>
|
||||||
Date: Thu, 6 Jul 2023 08:33:25 +0000
|
Date: Thu, 6 Jul 2023 08:33:25 +0000
|
||||||
Subject: [PATCH] backport hostapd ucode / wifi reload support
|
Subject: [PATCH] backport hostapd ucode / wifi reload support
|
||||||
@@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
.../services/hostapd/files/radius.config | 9 +
|
.../services/hostapd/files/radius.config | 9 +
|
||||||
.../services/hostapd/files/radius.init | 42 +
|
.../services/hostapd/files/radius.init | 42 +
|
||||||
.../services/hostapd/files/radius.users | 14 +
|
.../services/hostapd/files/radius.users | 14 +
|
||||||
.../network/services/hostapd/files/wdev.uc | 153 +
|
.../network/services/hostapd/files/wdev.uc | 156 +
|
||||||
.../hostapd/files/wpa_supplicant-basic.config | 4 +-
|
.../hostapd/files/wpa_supplicant-basic.config | 4 +-
|
||||||
.../hostapd/files/wpa_supplicant-full.config | 4 +-
|
.../hostapd/files/wpa_supplicant-full.config | 4 +-
|
||||||
.../hostapd/files/wpa_supplicant-mini.config | 2 +-
|
.../hostapd/files/wpa_supplicant-mini.config | 2 +-
|
||||||
@@ -103,7 +103,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
.../hostapd/src/wpa_supplicant/ubus.h | 11 -
|
.../hostapd/src/wpa_supplicant/ubus.h | 11 -
|
||||||
.../hostapd/src/wpa_supplicant/ucode.c | 177 +
|
.../hostapd/src/wpa_supplicant/ucode.c | 177 +
|
||||||
.../hostapd/src/wpa_supplicant/ucode.h | 38 +
|
.../hostapd/src/wpa_supplicant/ucode.h | 38 +
|
||||||
98 files changed, 15512 insertions(+), 2535 deletions(-)
|
98 files changed, 15515 insertions(+), 2535 deletions(-)
|
||||||
create mode 100644 package/network/services/hostapd/README.md
|
create mode 100644 package/network/services/hostapd/README.md
|
||||||
create mode 100644 package/network/services/hostapd/files/common.uc
|
create mode 100644 package/network/services/hostapd/files/common.uc
|
||||||
create mode 100644 package/network/services/hostapd/files/hostapd.uc
|
create mode 100644 package/network/services/hostapd/files/hostapd.uc
|
||||||
@@ -2208,7 +2208,7 @@ index 0000000000..2150863306
|
|||||||
+`ubus call hostapd.wl5-fb wps_start`
|
+`ubus call hostapd.wl5-fb wps_start`
|
||||||
diff --git a/package/network/services/hostapd/files/common.uc b/package/network/services/hostapd/files/common.uc
|
diff --git a/package/network/services/hostapd/files/common.uc b/package/network/services/hostapd/files/common.uc
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000..2002572cf1
|
index 0000000000..9ece3b1af2
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/package/network/services/hostapd/files/common.uc
|
+++ b/package/network/services/hostapd/files/common.uc
|
||||||
@@ -0,0 +1,168 @@
|
@@ -0,0 +1,168 @@
|
||||||
@@ -2248,7 +2248,7 @@ index 0000000000..2002572cf1
|
|||||||
+ if (!__phy_is_fullmac(phyidx))
|
+ if (!__phy_is_fullmac(phyidx))
|
||||||
+ return null;
|
+ return null;
|
||||||
+
|
+
|
||||||
+ data = nl80211.request(
|
+ let data = nl80211.request(
|
||||||
+ nl80211.const.NL80211_CMD_GET_INTERFACE,
|
+ nl80211.const.NL80211_CMD_GET_INTERFACE,
|
||||||
+ nl80211.const.NLM_F_DUMP,
|
+ nl80211.const.NLM_F_DUMP,
|
||||||
+ { wiphy: phyidx });
|
+ { wiphy: phyidx });
|
||||||
@@ -2964,14 +2964,14 @@ index 0000000000..03e2fc8fae
|
|||||||
+}
|
+}
|
||||||
diff --git a/package/network/services/hostapd/files/wdev.uc b/package/network/services/hostapd/files/wdev.uc
|
diff --git a/package/network/services/hostapd/files/wdev.uc b/package/network/services/hostapd/files/wdev.uc
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000..9701af125a
|
index 0000000000..896f5261fb
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/package/network/services/hostapd/files/wdev.uc
|
+++ b/package/network/services/hostapd/files/wdev.uc
|
||||||
@@ -0,0 +1,153 @@
|
@@ -0,0 +1,156 @@
|
||||||
+#!/usr/bin/env ucode
|
+#!/usr/bin/env ucode
|
||||||
+'use strict';
|
+'use strict';
|
||||||
+import { vlist_new, is_equal, wdev_create, wdev_remove } from "/usr/share/hostap/common.uc";
|
+import { vlist_new, is_equal, wdev_create, wdev_remove } from "/usr/share/hostap/common.uc";
|
||||||
+import { readfile, writefile, basename, glob } from "fs";
|
+import { readfile, writefile, basename, readlink, glob } from "fs";
|
||||||
+
|
+
|
||||||
+let keep_devices = {};
|
+let keep_devices = {};
|
||||||
+let phy = shift(ARGV);
|
+let phy = shift(ARGV);
|
||||||
@@ -3076,6 +3076,9 @@ index 0000000000..9701af125a
|
|||||||
+ if (config[wdev])
|
+ if (config[wdev])
|
||||||
+ continue;
|
+ continue;
|
||||||
+
|
+
|
||||||
|
+ if (basename(readlink(`/sys/class/net/${wdev}/phy80211`)) != phy)
|
||||||
|
+ continue;
|
||||||
|
+
|
||||||
+ if (trim(readfile(`/sys/class/net/${wdev}/operstate`)) == "down")
|
+ if (trim(readfile(`/sys/class/net/${wdev}/operstate`)) == "down")
|
||||||
+ config[wdev] = {};
|
+ config[wdev] = {};
|
||||||
+ }
|
+ }
|
||||||
|
|||||||
Reference in New Issue
Block a user