]> www.infradead.org Git - users/jedix/linux-maple.git/commit
mac80211: ensure that mgmt tx skbs have tailroom for encryption
authorFelix Fietkau <nbd@nbd.name>
Tue, 29 Jan 2019 10:10:57 +0000 (11:10 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 15 Feb 2019 07:09:12 +0000 (08:09 +0100)
commit2243296f1144ddefb9f435c1f4f5e6042481dac7
tree0bba7a07f97cd14380e8d0c63ba6e16ea96c7fd5
parent39551af0e4e6562a859b96aed99a011f756038b7
mac80211: ensure that mgmt tx skbs have tailroom for encryption

commit 9d0f50b80222dc273e67e4e14410fcfa4130a90c upstream.

Some drivers use IEEE80211_KEY_FLAG_SW_MGMT_TX to indicate that management
frames need to be software encrypted. Since normal data packets are still
encrypted by the hardware, crypto_tx_tailroom_needed_cnt gets decremented
after key upload to hw. This can lead to passing skbs to ccmp_encrypt_skb,
which don't have the necessary tailroom for software encryption.

Change the code to add tailroom for encrypted management packets, even if
crypto_tx_tailroom_needed_cnt is 0.

Cc: stable@vger.kernel.org
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/mac80211/tx.c