diff options
author | Arik Nemtsov <arik@wizery.com> | 2014-10-22 12:30:59 +0300 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2014-10-23 20:40:03 +0200 |
commit | 0fc1e0495fd6e261e75acdbe66b53e769e5ffb81 (patch) | |
tree | 01f0e5c9cb8b8c834224ca10161d152f4f5a8307 /include/net | |
parent | 2bad7748b332d7218377287248eb66c25de033b2 (diff) | |
download | linux-0fc1e0495fd6e261e75acdbe66b53e769e5ffb81.tar.gz linux-0fc1e0495fd6e261e75acdbe66b53e769e5ffb81.tar.bz2 linux-0fc1e0495fd6e261e75acdbe66b53e769e5ffb81.zip |
mac80211: expose API allowing station iteration
Allow drivers to iterate all stations currently uploaded to them.
Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/mac80211.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 99dd3ce7484e..2b7426a90ff0 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h @@ -4193,6 +4193,22 @@ void ieee80211_iterate_active_interfaces_rtnl(struct ieee80211_hw *hw, void *data); /** + * ieee80211_iterate_stations_atomic - iterate stations + * + * This function iterates over all stations associated with a given + * hardware that are currently uploaded to the driver and calls the callback + * function for them. + * This function requires the iterator callback function to be atomic, + * + * @hw: the hardware struct of which the interfaces should be iterated over + * @iterator: the iterator function to call, cannot sleep + * @data: first argument of the iterator function + */ +void ieee80211_iterate_stations_atomic(struct ieee80211_hw *hw, + void (*iterator)(void *data, + struct ieee80211_sta *sta), + void *data); +/** * ieee80211_queue_work - add work onto the mac80211 workqueue * * Drivers and mac80211 use this to add work onto the mac80211 workqueue. |