mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2024-12-28 16:53:49 +00:00
wifi: mac80211: filter on monitor interfaces based on configured channel
When a monitor interface has an assigned channel (only happens with the NO_VIRTUAL_MONITOR feature), only pass packets received on that channel. This is useful for monitoring on multiple channels at the same time using multiple monitor interfaces. Signed-off-by: Felix Fietkau <nbd@nbd.name> Link: https://patch.msgid.link/1bbe55107ba0f2e62ea90f305faeb7ba9247ef29.1728462320.git-series.nbd@nbd.name Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
342afe693e
commit
f92e0cf19a
@ -837,6 +837,13 @@ ieee80211_rx_monitor(struct ieee80211_local *local, struct sk_buff *origskb,
|
||||
ieee80211_handle_mu_mimo_mon(monitor_sdata, origskb, rtap_space);
|
||||
|
||||
list_for_each_entry_rcu(sdata, &local->mon_list, u.mntr.list) {
|
||||
struct cfg80211_chan_def *chandef;
|
||||
|
||||
chandef = &sdata->vif.bss_conf.chanreq.oper;
|
||||
if (chandef->chan &&
|
||||
chandef->chan->center_freq != status->freq)
|
||||
continue;
|
||||
|
||||
if (!prev_sdata) {
|
||||
prev_sdata = sdata;
|
||||
continue;
|
||||
|
Loading…
Reference in New Issue
Block a user