mirror of
https://git.yoctoproject.org/meta-ti
synced 2026-07-16 22:38:04 +00:00
189ce92b4c
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
53 lines
1.8 KiB
Diff
53 lines
1.8 KiB
Diff
From 12b3ec5c806e2daef619f068f80115f4dc0aa6bb Mon Sep 17 00:00:00 2001
|
|
From: Stanislaw Gruszka <sgruszka@redhat.com>
|
|
Date: Wed, 11 Jan 2012 09:26:54 +0100
|
|
Subject: [PATCH 048/129] mac80211: fix rx->key NULL pointer dereference in
|
|
promiscuous mode
|
|
|
|
commit 1140afa862842ac3e56678693050760edc4ecde9 upstream.
|
|
|
|
Since:
|
|
|
|
commit 816c04fe7ef01dd9649f5ccfe796474db8708be5
|
|
Author: Christian Lamparter <chunkeey@googlemail.com>
|
|
Date: Sat Apr 30 15:24:30 2011 +0200
|
|
|
|
mac80211: consolidate MIC failure report handling
|
|
|
|
is possible to that we dereference rx->key == NULL when driver set
|
|
RX_FLAG_MMIC_STRIPPED and not RX_FLAG_IV_STRIPPED and we are in
|
|
promiscuous mode. This happen with rt73usb and rt61pci at least.
|
|
|
|
Before the commit we always check rx->key against NULL, so I assume
|
|
fix should be done in mac80211 (also mic_fail path has similar check).
|
|
|
|
References:
|
|
https://bugzilla.redhat.com/show_bug.cgi?id=769766
|
|
http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2012-January/004395.html
|
|
|
|
Reported-by: Stuart D Gathman <stuart@gathman.org>
|
|
Reported-by: Kai Wohlfahrt <kai.scorpio@gmail.com>
|
|
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
|
|
Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
|
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
|
|
---
|
|
net/mac80211/wpa.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/net/mac80211/wpa.c b/net/mac80211/wpa.c
|
|
index f614ce7..28a39bb 100644
|
|
--- a/net/mac80211/wpa.c
|
|
+++ b/net/mac80211/wpa.c
|
|
@@ -106,7 +106,7 @@ ieee80211_rx_h_michael_mic_verify(struct ieee80211_rx_data *rx)
|
|
if (status->flag & RX_FLAG_MMIC_ERROR)
|
|
goto mic_fail;
|
|
|
|
- if (!(status->flag & RX_FLAG_IV_STRIPPED))
|
|
+ if (!(status->flag & RX_FLAG_IV_STRIPPED) && rx->key)
|
|
goto update_iv;
|
|
|
|
return RX_CONTINUE;
|
|
--
|
|
1.7.9.5
|
|
|