diff --git a/src/ap/ap_drv_ops.c b/src/ap/ap_drv_ops.c index c65af9215..d62829ffb 100644 --- a/src/ap/ap_drv_ops.c +++ b/src/ap/ap_drv_ops.c @@ -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) { 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_add = hostapd_sta_add; ops->sta_remove = hostapd_sta_remove; - ops->set_countermeasures = hostapd_set_countermeasures; } diff --git a/src/ap/ap_drv_ops.h b/src/ap/ap_drv_ops.h index 68869a0d9..e2059e8cf 100644 --- a/src/ap/ap_drv_ops.h +++ b/src/ap/ap_drv_ops.h @@ -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); } +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 */ diff --git a/src/ap/hostapd.h b/src/ap/hostapd.h index e0450d927..c0d3491cb 100644 --- a/src/ap/hostapd.h +++ b/src/ap/hostapd.h @@ -93,7 +93,6 @@ struct hostapd_driver_ops { u16 listen_interval, const struct ieee80211_ht_capabilities *ht_capab); int (*sta_remove)(struct hostapd_data *hapd, const u8 *addr); - int (*set_countermeasures)(struct hostapd_data *hapd, int enabled); }; /** diff --git a/src/ap/tkip_countermeasures.c b/src/ap/tkip_countermeasures.c index 9690348e9..9e4a5d96b 100644 --- a/src/ap/tkip_countermeasures.c +++ b/src/ap/tkip_countermeasures.c @@ -21,6 +21,7 @@ #include "sta_info.h" #include "ap_mlme.h" #include "wpa_auth.h" +#include "ap_drv_ops.h" #include "tkip_countermeasures.h" @@ -29,7 +30,7 @@ static void ieee80211_tkip_countermeasures_stop(void *eloop_ctx, { struct hostapd_data *hapd = eloop_ctx; hapd->tkip_countermeasures = 0; - hapd->drv.set_countermeasures(hapd, 0); + hostapd_drv_set_countermeasures(hapd, 0); hostapd_logger(hapd, NULL, HOSTAPD_MODULE_IEEE80211, 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); hapd->tkip_countermeasures = 1; - hapd->drv.set_countermeasures(hapd, 1); + hostapd_drv_set_countermeasures(hapd, 1); wpa_gtk_rekey(hapd->wpa_auth); eloop_cancel_timeout(ieee80211_tkip_countermeasures_stop, hapd, NULL); eloop_register_timeout(60, 0, ieee80211_tkip_countermeasures_stop,