mac80211: Don't request encryption for probe response
authorIvo van Doorn <ivdoorn@gmail.com>
Tue, 1 Jul 2008 08:45:13 +0000 (10:45 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 8 Jul 2008 14:21:34 +0000 (10:21 -0400)
Probe responses shouldn't be encrypted, and mac80211 doesn't
set the crypto key accordingly. However it didn't set the
IEEE80211_TX_CTL_DO_NOT_ENCRYPT flag which means drivers
could make an attempt to encrypt it, and causing a NULL
pointer dereference when accessing the provided hw_key field.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/mlme.c

index 4a3bddd..86abdf9 100644 (file)
@@ -2481,6 +2481,7 @@ static int ieee80211_sta_join_ibss(struct net_device *dev,
                        control->flags |= IEEE80211_TX_CTL_SHORT_PREAMBLE;
                control->antenna_sel_tx = local->hw.conf.antenna_sel_tx;
                control->flags |= IEEE80211_TX_CTL_NO_ACK;
+               control->flags |= IEEE80211_TX_CTL_DO_NOT_ENCRYPT;
                control->control.retry_limit = 1;
 
                ifsta->probe_resp = skb_copy(skb, GFP_ATOMIC);