2011-11-10 07:35:21

by Arik Nemtsov

[permalink] [raw]
Subject: [PATCH] mac80211: make sure hw_key exists before checking its flags

Fixes a bug introduced in:

commit 077a9154898b374f20555adc3f620cccd02581d6
Author: Arik Nemtsov <[email protected]>
Date: Sun Oct 23 08:21:41 2011 +0200

Reported-by: Arend van Spriel <[email protected]>
Reported-by: Johannes Berg <[email protected]>
Signed-off-by: Arik Nemtsov <[email protected]>
---
net/mac80211/wpa.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/net/mac80211/wpa.c b/net/mac80211/wpa.c
index 13efab5..106e15a 100644
--- a/net/mac80211/wpa.c
+++ b/net/mac80211/wpa.c
@@ -415,7 +415,8 @@ static int ccmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb)
memmove(pos, pos + CCMP_HDR_LEN, hdrlen);

/* the HW only needs room for the IV, but not the actual IV */
- if (info->control.hw_key->flags & IEEE80211_KEY_FLAG_PUT_IV_SPACE)
+ if (info->control.hw_key &&
+ (info->control.hw_key->flags & IEEE80211_KEY_FLAG_PUT_IV_SPACE))
return 0;

hdr = (struct ieee80211_hdr *) pos;
--
1.7.5.4