hostapd: update to 2012-09-10
[openwrt/staging/wigyori.git] / package / hostapd / patches / 452-ctrl_iface_reload.patch
index c0617eb75f54ace9277fed238ae8cfb0a22b17ea..81dcfedde5382e0d0750665cc66b8c42897303ad 100644 (file)
@@ -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;
  }
  
 +      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);