aboutsummaryrefslogtreecommitdiffstats
path: root/package/hostapd/patches/452-ctrl_iface_reload.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/hostapd/patches/452-ctrl_iface_reload.patch')
-rw-r--r--package/hostapd/patches/452-ctrl_iface_reload.patch16
1 files changed, 9 insertions, 7 deletions
diff --git a/package/hostapd/patches/452-ctrl_iface_reload.patch b/package/hostapd/patches/452-ctrl_iface_reload.patch
index c0617eb75f..81dcfedde5 100644
--- a/package/hostapd/patches/452-ctrl_iface_reload.patch
+++ b/package/hostapd/patches/452-ctrl_iface_reload.patch
@@ -16,7 +16,7 @@
static void hostapd_ctrl_iface_send(struct hostapd_data *hapd, int level,
const char *buf, size_t len);
-@@ -152,6 +154,66 @@ static int hostapd_ctrl_iface_new_sta(st
+@@ -152,6 +154,68 @@ static int hostapd_ctrl_iface_new_sta(st
return 0;
}
@@ -69,28 +69,30 @@
+ return conf;
+}
+
-+static int hostapd_ctrl_iface_reload(struct hostapd_data *hapd, char *txt)
++static int hostapd_ctrl_iface_update(struct hostapd_data *hapd, char *txt)
+{
++ struct hostapd_config * (*config_read_cb)(const char *config_fname);
+ struct hostapd_iface *iface = hapd->iface;
+
-+ iface->config_read_cb = hostapd_ctrl_iface_config_read;
++ config_read_cb = iface->interfaces->config_read_cb;
++ iface->interfaces->config_read_cb = hostapd_ctrl_iface_config_read;
+ reload_opts = txt;
+
+ hostapd_reload_config(iface);
+
-+ iface->config_read_cb = hostapd_config_read;
++ iface->interfaces->config_read_cb = config_read_cb;
+}
#ifdef CONFIG_IEEE80211W
#ifdef NEED_AP_MLME
-@@ -710,6 +772,10 @@ static void hostapd_ctrl_iface_receive(i
+@@ -864,6 +928,10 @@ static void hostapd_ctrl_iface_receive(i
reply_len += res;
}
#endif /* CONFIG_NO_RADIUS */
+ } else if (os_strcmp(buf, "DOWN") == 0) {
+ hostapd_ctrl_iface_set_down(hapd);
-+ } else if (os_strncmp(buf, "RELOAD ", 7) == 0) {
-+ hostapd_ctrl_iface_reload(hapd, buf + 7);
++ } else if (os_strncmp(buf, "UPDATE ", 7) == 0) {
++ hostapd_ctrl_iface_update(hapd, buf + 7);
} else if (os_strcmp(buf, "STA-FIRST") == 0) {
reply_len = hostapd_ctrl_iface_sta_first(hapd, reply,
reply_size);