Commit 3579f4c2 authored by Johannes Berg's avatar Johannes Berg
Browse files

wifi: mac80211: allow link address A2 in TXQ dequeue



In ieee80211_tx_dequeue() we currently allow a control port
frame to be transmitted on a non-authorized port only if the
A2 matches the local interface address, but if that's an MLD
and the peer is a legacy peer, we need to allow link address
here. Fix that.

Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent a6ba64d0
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -3772,8 +3772,8 @@ struct sk_buff *ieee80211_tx_dequeue(struct ieee80211_hw *hw,
			     !test_sta_flag(tx.sta, WLAN_STA_AUTHORIZED) &&
			     (!(info->control.flags &
				IEEE80211_TX_CTRL_PORT_CTRL_PROTO) ||
			      !ether_addr_equal(tx.sdata->vif.addr,
						hdr->addr2)))) {
			      !ieee80211_is_our_addr(tx.sdata, hdr->addr2,
						     NULL)))) {
			I802_DEBUG_INC(local->tx_handlers_drop_unauth_port);
			ieee80211_free_txskb(&local->hw, skb);
			goto begin;