Message ID | 20181005215609.13935-1-colin.king@canonical.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [next] ath10k: fix out of bound read on array ath10k_rates | expand |
Colin King <colin.king@canonical.com> wrote: > From: Colin Ian King <colin.king@canonical.com> > > An out-of-bounds read on array ath10k_rates is occurring because > the maximum number of elements is currently based on the size of > the array and not the number of elements in the array. Fix this > by using ARRAY_SIZE instead of sizeof. > > Detected by CoverityScan, CID#1473918 ("Out-of-bounds read") > > Fixes: f279294e9ee2 ("ath10k: add support for configuring management packet rate") > Signed-off-by: Colin Ian King <colin.king@canonical.com> This is already fixed in ath-next. error: patch failed: drivers/net/wireless/ath/ath10k/mac.c:164 error: drivers/net/wireless/ath/ath10k/mac.c: patch does not apply stg import: Diff does not apply cleanly Patch set to Rejected.
diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c index 3933dd96da55..3564676e74e3 100644 --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c @@ -164,7 +164,7 @@ static int ath10k_mac_get_rate_hw_value(int bitrate) if (ath10k_mac_bitrate_is_cck(bitrate)) hw_value_prefix = WMI_RATE_PREAMBLE_CCK << 6; - for (i = 0; i < sizeof(ath10k_rates); i++) { + for (i = 0; i < ARRAY_SIZE(ath10k_rates); i++) { if (ath10k_rates[i].bitrate == bitrate) return hw_value_prefix | ath10k_rates[i].hw_value; }