diff options
author | Felix Fietkau <nbd@openwrt.org> | 2013-05-28 13:01:53 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-05-29 09:11:56 +0200 |
commit | 31eba5bc56a9324f056d28569a4f89f39c1c3f70 (patch) | |
tree | b070a7f1871763d66562678ff23daa4613a3eab9 /net/mac80211/util.c | |
parent | cfg80211: support an active monitor interface flag (diff) | |
download | linux-31eba5bc56a9324f056d28569a4f89f39c1c3f70.tar.xz linux-31eba5bc56a9324f056d28569a4f89f39c1c3f70.zip |
mac80211: support active monitor interfaces
Support them only if the driver advertises support for them via
IEEE80211_HW_SUPPORTS_ACTIVE_MONITOR. Unlike normal monitor interfaces,
they are added to the driver, along with their MAC address.
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/util.c')
-rw-r--r-- | net/mac80211/util.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/mac80211/util.c b/net/mac80211/util.c index 2a8d759324c2..89a83770d152 100644 --- a/net/mac80211/util.c +++ b/net/mac80211/util.c @@ -560,6 +560,9 @@ void ieee80211_iterate_active_interfaces( list_for_each_entry(sdata, &local->interfaces, list) { switch (sdata->vif.type) { case NL80211_IFTYPE_MONITOR: + if (!(sdata->u.mntr_flags & MONITOR_FLAG_ACTIVE)) + continue; + break; case NL80211_IFTYPE_AP_VLAN: continue; default: @@ -598,6 +601,9 @@ void ieee80211_iterate_active_interfaces_atomic( list_for_each_entry_rcu(sdata, &local->interfaces, list) { switch (sdata->vif.type) { case NL80211_IFTYPE_MONITOR: + if (!(sdata->u.mntr_flags & MONITOR_FLAG_ACTIVE)) + continue; + break; case NL80211_IFTYPE_AP_VLAN: continue; default: |