Update WPS IE on hostapd reconfiguration
This is needed to handle cases where WPS state may have changed and hostapd is reloading its configuration.
This commit is contained in:
parent
1491f8a785
commit
6deb41e73f
3 changed files with 17 additions and 0 deletions
|
@ -97,6 +97,7 @@ int hostapd_reload_config(struct hostapd_iface *iface)
|
||||||
}
|
}
|
||||||
|
|
||||||
ieee802_11_set_beacon(hapd);
|
ieee802_11_set_beacon(hapd);
|
||||||
|
hostapd_update_wps(hapd);
|
||||||
|
|
||||||
if (hapd->conf->ssid.ssid_set &&
|
if (hapd->conf->ssid.ssid_set &&
|
||||||
hostapd_set_ssid(hapd, (u8 *) hapd->conf->ssid.ssid,
|
hostapd_set_ssid(hapd, (u8 *) hapd->conf->ssid.ssid,
|
||||||
|
|
|
@ -686,6 +686,17 @@ void hostapd_deinit_wps(struct hostapd_data *hapd)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void hostapd_update_wps(struct hostapd_data *hapd)
|
||||||
|
{
|
||||||
|
if (hapd->wps == NULL)
|
||||||
|
return;
|
||||||
|
if (hapd->conf->wps_state)
|
||||||
|
wps_registrar_update_ie(hapd->wps->registrar);
|
||||||
|
else
|
||||||
|
hostapd_deinit_wps(hapd);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int hostapd_wps_add_pin(struct hostapd_data *hapd, const char *uuid,
|
int hostapd_wps_add_pin(struct hostapd_data *hapd, const char *uuid,
|
||||||
const char *pin, int timeout)
|
const char *pin, int timeout)
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,6 +20,7 @@
|
||||||
int hostapd_init_wps(struct hostapd_data *hapd,
|
int hostapd_init_wps(struct hostapd_data *hapd,
|
||||||
struct hostapd_bss_config *conf);
|
struct hostapd_bss_config *conf);
|
||||||
void hostapd_deinit_wps(struct hostapd_data *hapd);
|
void hostapd_deinit_wps(struct hostapd_data *hapd);
|
||||||
|
void hostapd_update_wps(struct hostapd_data *hapd);
|
||||||
int hostapd_wps_add_pin(struct hostapd_data *hapd, const char *uuid,
|
int hostapd_wps_add_pin(struct hostapd_data *hapd, const char *uuid,
|
||||||
const char *pin, int timeout);
|
const char *pin, int timeout);
|
||||||
int hostapd_wps_button_pushed(struct hostapd_data *hapd);
|
int hostapd_wps_button_pushed(struct hostapd_data *hapd);
|
||||||
|
@ -40,6 +41,10 @@ static inline void hostapd_deinit_wps(struct hostapd_data *hapd)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline void hostapd_update_wps(struct hostapd_data *hapd)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
static inline int hostapd_wps_get_mib_sta(struct hostapd_data *hapd,
|
static inline int hostapd_wps_get_mib_sta(struct hostapd_data *hapd,
|
||||||
const u8 *addr,
|
const u8 *addr,
|
||||||
char *buf, size_t buflen)
|
char *buf, size_t buflen)
|
||||||
|
|
Loading…
Reference in a new issue