mac80211: fix monitor mode injection
Channel contexts are not always used with monitor interfaces. If no channel context is set, use the oper channel, otherwise tx fails. Signed-off-by: Felix Fietkau <nbd@openwrt.org> [check local->use_chanctx] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
aacde9ee45
commit
b4a7ff75ba
@ -1673,10 +1673,13 @@ netdev_tx_t ieee80211_monitor_start_xmit(struct sk_buff *skb,
|
||||
chanctx_conf =
|
||||
rcu_dereference(tmp_sdata->vif.chanctx_conf);
|
||||
}
|
||||
if (!chanctx_conf)
|
||||
goto fail_rcu;
|
||||
|
||||
chan = chanctx_conf->def.chan;
|
||||
if (chanctx_conf)
|
||||
chan = chanctx_conf->def.chan;
|
||||
else if (!local->use_chanctx)
|
||||
chan = local->_oper_channel;
|
||||
else
|
||||
goto fail_rcu;
|
||||
|
||||
/*
|
||||
* Frame injection is not allowed if beaconing is not allowed
|
||||
|
Loading…
Reference in New Issue
Block a user