]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
staging: wilc1000: Increase the size of wid_list array
authorOscar Carter <oscar.carter@gmx.com>
Mon, 4 May 2020 15:09:11 +0000 (17:09 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 24 Jun 2020 15:50:23 +0000 (17:50 +0200)
[ Upstream commit a4338ed2e1cf724563956ec5f91deeaabfedbe23 ]

Increase by one the size of wid_list array as index variable can reach a
value of 5. If this happens, an out-of-bounds access is performed.

Also, use a #define instead of a hard-coded literal for the new array
size.

Addresses-Coverity-ID: 1451981 ("Out-of-bounds access")
Fixes: f5a3cb90b802d ("staging: wilc1000: add passive scan support")
Acked-by: Ajay Singh <ajay.kathat@microchip.com>
Signed-off-by: Oscar Carter <oscar.carter@gmx.com>
Link: https://lore.kernel.org/r/20200504150911.4470-1-oscar.carter@gmx.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/staging/wilc1000/wilc_hif.c

index 77d0732f451bed9b71ea927b2d16e01b9bf4d619..221e3d93db14817bddef5cc570469f6da72941f0 100644 (file)
@@ -12,6 +12,8 @@
 #define WILC_FALSE_FRMWR_CHANNEL               100
 #define WILC_MAX_RATES_SUPPORTED               12
 
+#define WILC_SCAN_WID_LIST_SIZE                6
+
 struct wilc_rcvd_mac_info {
        u8 status;
 };
@@ -233,7 +235,7 @@ int wilc_scan(struct wilc_vif *vif, u8 scan_source, u8 scan_type,
              void *user_arg, struct cfg80211_scan_request *request)
 {
        int result = 0;
-       struct wid wid_list[5];
+       struct wid wid_list[WILC_SCAN_WID_LIST_SIZE];
        u32 index = 0;
        u32 i, scan_timeout;
        u8 *buffer;