Switching the interface mode with some encryption keys set and then later
touching any key, triggers an oops because ieee80211_if_reinit fails to
NULL'ify the related pointers after free'ing the key on mode change. Long
explanation, simple fix below.

Signed-off-by: Jan Kiszka <[EMAIL PROTECTED]>

[Sorry, yet another rt2x00 CVS patch...]

---
 ieee80211/ieee80211_iface.c |    1 +
 1 file changed, 1 insertion(+)

Index: rt2x00/ieee80211/ieee80211_iface.c
===================================================================
--- rt2x00.orig/ieee80211/ieee80211_iface.c
+++ rt2x00/ieee80211/ieee80211_iface.c
@@ -231,6 +231,7 @@ void ieee80211_if_reinit(struct net_devi
                                            local->keys[i], 0);
 #endif
                ieee80211_key_free(sdata->keys[i]);
+               sdata->keys[i] = NULL;
        }
 
        /* Shouldn't be necessary but won't hurt */


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to