summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorMariusz Kozlowski <mk@lab.zgora.pl>2011-03-26 18:58:51 +0100
committerJohn W. Linville <linville@tuxdriver.com>2011-03-28 21:42:02 +0200
commit67aa030c0dff6095128bcb4e8043b48360f32331 (patch)
tree91f839fbe604cf1f96a12b2ca09bb65a317fe284 /net
parentmac80211: fix NULL pointer dereference in ieee80211_key_alloc() (diff)
downloadlinux-67aa030c0dff6095128bcb4e8043b48360f32331.tar.xz
linux-67aa030c0dff6095128bcb4e8043b48360f32331.zip
mac80211: fix possible NULL pointer dereference
This patch moves 'key' dereference after BUG_ON(!key) so that when key is NULL we will see proper trace instead of oops. Signed-off-by: Mariusz Kozlowski <mk@lab.zgora.pl> Acked-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net')
-rw-r--r--net/mac80211/key.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/mac80211/key.c b/net/mac80211/key.c
index 09cf1f28c12b..af3c56482c80 100644
--- a/net/mac80211/key.c
+++ b/net/mac80211/key.c
@@ -400,11 +400,12 @@ int ieee80211_key_link(struct ieee80211_key *key,
{
struct ieee80211_key *old_key;
int idx, ret;
- bool pairwise = key->conf.flags & IEEE80211_KEY_FLAG_PAIRWISE;
+ bool pairwise;
BUG_ON(!sdata);
BUG_ON(!key);
+ pairwise = key->conf.flags & IEEE80211_KEY_FLAG_PAIRWISE;
idx = key->conf.keyidx;
key->local = sdata->local;
key->sdata = sdata;