hostapd_driver_ops reduction: set_countermeasures

This commit is contained in:
Jouni Malinen 2010-11-24 15:26:44 +02:00 committed by Jouni Malinen
parent cee7d66b1d
commit b5b1b18f39
4 changed files with 12 additions and 13 deletions

View file

@ -455,15 +455,6 @@ static int hostapd_sta_remove(struct hostapd_data *hapd, const u8 *addr)
} }
static int hostapd_set_countermeasures(struct hostapd_data *hapd, int enabled)
{
if (hapd->driver == NULL ||
hapd->driver->hapd_set_countermeasures == NULL)
return 0;
return hapd->driver->hapd_set_countermeasures(hapd->drv_priv, enabled);
}
void hostapd_set_driver_ops(struct hostapd_driver_ops *ops) void hostapd_set_driver_ops(struct hostapd_driver_ops *ops)
{ {
ops->set_ap_wps_ie = hostapd_set_ap_wps_ie; ops->set_ap_wps_ie = hostapd_set_ap_wps_ie;
@ -487,7 +478,6 @@ void hostapd_set_driver_ops(struct hostapd_driver_ops *ops)
ops->sta_disassoc = hostapd_sta_disassoc; ops->sta_disassoc = hostapd_sta_disassoc;
ops->sta_add = hostapd_sta_add; ops->sta_add = hostapd_sta_add;
ops->sta_remove = hostapd_sta_remove; ops->sta_remove = hostapd_sta_remove;
ops->set_countermeasures = hostapd_set_countermeasures;
} }

View file

@ -77,4 +77,13 @@ static inline int hostapd_drv_send_mlme(struct hostapd_data *hapd,
return hapd->driver->send_mlme(hapd->drv_priv, msg, len); return hapd->driver->send_mlme(hapd->drv_priv, msg, len);
} }
static inline int hostapd_drv_set_countermeasures(struct hostapd_data *hapd,
int enabled)
{
if (hapd->driver == NULL ||
hapd->driver->hapd_set_countermeasures == NULL)
return 0;
return hapd->driver->hapd_set_countermeasures(hapd->drv_priv, enabled);
}
#endif /* AP_DRV_OPS */ #endif /* AP_DRV_OPS */

View file

@ -93,7 +93,6 @@ struct hostapd_driver_ops {
u16 listen_interval, u16 listen_interval,
const struct ieee80211_ht_capabilities *ht_capab); const struct ieee80211_ht_capabilities *ht_capab);
int (*sta_remove)(struct hostapd_data *hapd, const u8 *addr); int (*sta_remove)(struct hostapd_data *hapd, const u8 *addr);
int (*set_countermeasures)(struct hostapd_data *hapd, int enabled);
}; };
/** /**

View file

@ -21,6 +21,7 @@
#include "sta_info.h" #include "sta_info.h"
#include "ap_mlme.h" #include "ap_mlme.h"
#include "wpa_auth.h" #include "wpa_auth.h"
#include "ap_drv_ops.h"
#include "tkip_countermeasures.h" #include "tkip_countermeasures.h"
@ -29,7 +30,7 @@ static void ieee80211_tkip_countermeasures_stop(void *eloop_ctx,
{ {
struct hostapd_data *hapd = eloop_ctx; struct hostapd_data *hapd = eloop_ctx;
hapd->tkip_countermeasures = 0; hapd->tkip_countermeasures = 0;
hapd->drv.set_countermeasures(hapd, 0); hostapd_drv_set_countermeasures(hapd, 0);
hostapd_logger(hapd, NULL, HOSTAPD_MODULE_IEEE80211, hostapd_logger(hapd, NULL, HOSTAPD_MODULE_IEEE80211,
HOSTAPD_LEVEL_INFO, "TKIP countermeasures ended"); HOSTAPD_LEVEL_INFO, "TKIP countermeasures ended");
} }
@ -44,7 +45,7 @@ static void ieee80211_tkip_countermeasures_start(struct hostapd_data *hapd)
wpa_auth_countermeasures_start(hapd->wpa_auth); wpa_auth_countermeasures_start(hapd->wpa_auth);
hapd->tkip_countermeasures = 1; hapd->tkip_countermeasures = 1;
hapd->drv.set_countermeasures(hapd, 1); hostapd_drv_set_countermeasures(hapd, 1);
wpa_gtk_rekey(hapd->wpa_auth); wpa_gtk_rekey(hapd->wpa_auth);
eloop_cancel_timeout(ieee80211_tkip_countermeasures_stop, hapd, NULL); eloop_cancel_timeout(ieee80211_tkip_countermeasures_stop, hapd, NULL);
eloop_register_timeout(60, 0, ieee80211_tkip_countermeasures_stop, eloop_register_timeout(60, 0, ieee80211_tkip_countermeasures_stop,