FT: Move RxKH configuration clearing into a helper function
This can be used as a shared function for reloading RxKHs at runtime. Signed-off-by: Dariusz Kopka <dariusz@plume.com>
This commit is contained in:
parent
c69ce778f6
commit
e94a7d7940
2 changed files with 27 additions and 20 deletions
|
@ -699,6 +699,31 @@ void hostapd_config_clear_wpa_psk(struct hostapd_wpa_psk **l)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef CONFIG_IEEE80211R_AP
|
||||||
|
void hostapd_config_clear_rxkhs(struct hostapd_bss_config *conf)
|
||||||
|
{
|
||||||
|
struct ft_remote_r0kh *r0kh, *r0kh_prev;
|
||||||
|
struct ft_remote_r1kh *r1kh, *r1kh_prev;
|
||||||
|
|
||||||
|
r0kh = conf->r0kh_list;
|
||||||
|
conf->r0kh_list = NULL;
|
||||||
|
while (r0kh) {
|
||||||
|
r0kh_prev = r0kh;
|
||||||
|
r0kh = r0kh->next;
|
||||||
|
os_free(r0kh_prev);
|
||||||
|
}
|
||||||
|
|
||||||
|
r1kh = conf->r1kh_list;
|
||||||
|
conf->r1kh_list = NULL;
|
||||||
|
while (r1kh) {
|
||||||
|
r1kh_prev = r1kh;
|
||||||
|
r1kh = r1kh->next;
|
||||||
|
os_free(r1kh_prev);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif /* CONFIG_IEEE80211R_AP */
|
||||||
|
|
||||||
|
|
||||||
static void hostapd_config_free_anqp_elem(struct hostapd_bss_config *conf)
|
static void hostapd_config_free_anqp_elem(struct hostapd_bss_config *conf)
|
||||||
{
|
{
|
||||||
struct anqp_element *elem;
|
struct anqp_element *elem;
|
||||||
|
@ -831,26 +856,7 @@ void hostapd_config_free_bss(struct hostapd_bss_config *conf)
|
||||||
os_free(conf->time_zone);
|
os_free(conf->time_zone);
|
||||||
|
|
||||||
#ifdef CONFIG_IEEE80211R_AP
|
#ifdef CONFIG_IEEE80211R_AP
|
||||||
{
|
hostapd_config_clear_rxkhs(conf);
|
||||||
struct ft_remote_r0kh *r0kh, *r0kh_prev;
|
|
||||||
struct ft_remote_r1kh *r1kh, *r1kh_prev;
|
|
||||||
|
|
||||||
r0kh = conf->r0kh_list;
|
|
||||||
conf->r0kh_list = NULL;
|
|
||||||
while (r0kh) {
|
|
||||||
r0kh_prev = r0kh;
|
|
||||||
r0kh = r0kh->next;
|
|
||||||
os_free(r0kh_prev);
|
|
||||||
}
|
|
||||||
|
|
||||||
r1kh = conf->r1kh_list;
|
|
||||||
conf->r1kh_list = NULL;
|
|
||||||
while (r1kh) {
|
|
||||||
r1kh_prev = r1kh;
|
|
||||||
r1kh = r1kh->next;
|
|
||||||
os_free(r1kh_prev);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif /* CONFIG_IEEE80211R_AP */
|
#endif /* CONFIG_IEEE80211R_AP */
|
||||||
|
|
||||||
#ifdef CONFIG_WPS
|
#ifdef CONFIG_WPS
|
||||||
|
|
|
@ -1348,6 +1348,7 @@ void hostapd_config_free_radius_attr(struct hostapd_radius_attr *attr);
|
||||||
void hostapd_config_free_eap_user(struct hostapd_eap_user *user);
|
void hostapd_config_free_eap_user(struct hostapd_eap_user *user);
|
||||||
void hostapd_config_free_eap_users(struct hostapd_eap_user *user);
|
void hostapd_config_free_eap_users(struct hostapd_eap_user *user);
|
||||||
void hostapd_config_clear_wpa_psk(struct hostapd_wpa_psk **p);
|
void hostapd_config_clear_wpa_psk(struct hostapd_wpa_psk **p);
|
||||||
|
void hostapd_config_clear_rxkhs(struct hostapd_bss_config *conf);
|
||||||
void hostapd_config_free_bss(struct hostapd_bss_config *conf);
|
void hostapd_config_free_bss(struct hostapd_bss_config *conf);
|
||||||
void hostapd_config_free(struct hostapd_config *conf);
|
void hostapd_config_free(struct hostapd_config *conf);
|
||||||
int hostapd_maclist_found(struct mac_acl_entry *list, int num_entries,
|
int hostapd_maclist_found(struct mac_acl_entry *list, int num_entries,
|
||||||
|
|
Loading…
Reference in a new issue