diff options
author | Marek Kwaczynski <marek.kwaczynski@tieto.com> | 2014-04-14 11:27:21 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2014-04-25 17:26:15 +0200 |
commit | 17d38fa8c20a9c3ec76943da46264ce657ac56d0 (patch) | |
tree | a6e59c0e973e7ea873728bb002e0fb7c3ad27882 /net/mac80211 | |
parent | c0166da9fee2aa8de9d1f9460f62d02176c22350 (diff) | |
download | op-kernel-dev-17d38fa8c20a9c3ec76943da46264ce657ac56d0.zip op-kernel-dev-17d38fa8c20a9c3ec76943da46264ce657ac56d0.tar.gz |
mac80211: add option to generate CCMP IVs only for mgmt frames
Some chips can encrypt managment frames in HW, but
require generated IV in the frame. Add a key flag
that allows us to achieve this.
Signed-off-by: Marek Kwaczynski <marek.kwaczynski@tieto.com>
[use BIT(0) to fill that spot, fix indentation]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211')
-rw-r--r-- | net/mac80211/wpa.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/mac80211/wpa.c b/net/mac80211/wpa.c index b8600e3..9b3dcc2 100644 --- a/net/mac80211/wpa.c +++ b/net/mac80211/wpa.c @@ -406,7 +406,10 @@ static int ccmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb) if (info->control.hw_key && !(info->control.hw_key->flags & IEEE80211_KEY_FLAG_GENERATE_IV) && - !(info->control.hw_key->flags & IEEE80211_KEY_FLAG_PUT_IV_SPACE)) { + !(info->control.hw_key->flags & IEEE80211_KEY_FLAG_PUT_IV_SPACE) && + !((info->control.hw_key->flags & + IEEE80211_KEY_FLAG_GENERATE_IV_MGMT) && + ieee80211_is_mgmt(hdr->frame_control))) { /* * hwaccel has no need for preallocated room for CCMP * header or MIC fields |