aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/net/mac80211/agg-tx.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2017-06-22 12:20:30 +0200
committerJohannes Berg <johannes.berg@intel.com>2017-09-05 11:28:43 +0200
commit53168215909281a09d3afc6fb51a9d4f81f74d39 (patch)
tree4e5bafae4e1a89365fff06ed05037aca808b61cc /net/mac80211/agg-tx.c
parentmac80211: fix incorrect assignment of reassoc value (diff)
downloadwireguard-linux-53168215909281a09d3afc6fb51a9d4f81f74d39.tar.xz
wireguard-linux-53168215909281a09d3afc6fb51a9d4f81f74d39.zip
mac80211: fix VLAN handling with TXQs
With TXQs, the AP_VLAN interfaces are resolved to their owner AP interface when enqueuing the frame, which makes sense since the frame really goes out on that as far as the driver is concerned. However, this introduces a problem: frames to be encrypted with a VLAN-specific GTK will now be encrypted with the AP GTK, since the information about which virtual interface to use to select the key is taken from the TXQ. Fix this by preserving info->control.vif and using that in the dequeue function. This now requires doing the driver-mapping in the dequeue as well. Since there's no way to filter the frames that are sitting on a TXQ, drop all frames, which may affect other interfaces, when an AP_VLAN is removed. Cc: stable@vger.kernel.org Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/agg-tx.c')
0 files changed, 0 insertions, 0 deletions