Staging: wlan-ng: still setting wrong data
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 28 Feb 2012 08:21:46 +0000 (11:21 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 29 Feb 2012 23:55:52 +0000 (15:55 -0800)
In commit 1ca1a92cc6 "Staging: wlan-ng: memsetting the wrong amount of
data" I changed the code so we didn't memset() past the end of the
msg1.bssid.data[] array.  Walter Harms noticed that it was weird that
we were setting the len to 6 when there were 7 elements in the array.
Pavel Roskin pointed out that the intent of the code was actually to
memset() msg1.bssid.data.data[] which is a 6 character array.

Reported-by: Walter Harms <wharms@bfs.de>
Reported-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/wlan-ng/cfg80211.c

index d518b315b368b49c618a6e5723544a76ac29df9b..4cd3ba5d564603e6e2266501c757f486a0bfb326 100644 (file)
@@ -356,7 +356,7 @@ int prism2_scan(struct wiphy *wiphy, struct net_device *dev,
        msg1.msgcode = DIDmsg_dot11req_scan;
        msg1.bsstype.data = P80211ENUM_bsstype_any;
 
-       memset(&msg1.bssid.data, 0xFF, sizeof(msg1.bssid.data));
+       memset(&msg1.bssid.data.data, 0xFF, sizeof(msg1.bssid.data.data));
        msg1.bssid.data.len = 6;
 
        if (request->n_ssids > 0) {