aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJahnavi Meher <jahnavi.meher@gmail.com>2014-06-25 06:17:45 -0400
committerJohn W. Linville <linville@tuxdriver.com>2014-06-25 15:40:40 -0400
commit688df7ec26ffde2c8d79b0ac1a3378155da59ff2 (patch)
tree2b35777d4be83942c174cc3faf831ba6fd97c573
parent80140b71e0bd2d9f6762791567cfd0aa04f20419 (diff)
rsi: Fixed errors and warnings reported by static code analyzers.
Fixed a potential buffer overflow in 'rsi_rates' and a sparse warning related to difference in endianness in rsi_91x_mgmt.c. Signed-off-by: Jahnavi Meher <jahnavi.meher@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/rsi/rsi_91x_mgmt.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/wireless/rsi/rsi_91x_mgmt.c b/drivers/net/wireless/rsi/rsi_91x_mgmt.c
index 83abe580cf5f..8d110fd9eba1 100644
--- a/drivers/net/wireless/rsi/rsi_91x_mgmt.c
+++ b/drivers/net/wireless/rsi/rsi_91x_mgmt.c
@@ -1055,7 +1055,8 @@ static int rsi_send_auto_rate_request(struct rsi_common *common)
1055 rate_table_offset = 4; 1055 rate_table_offset = 4;
1056 } 1056 }
1057 1057
1058 for (ii = 0, jj = 0; ii < ARRAY_SIZE(rsi_rates); ii++) { 1058 for (ii = 0, jj = 0;
1059 ii < (ARRAY_SIZE(rsi_rates) - rate_table_offset); ii++) {
1059 if (rate_bitmap & BIT(ii)) { 1060 if (rate_bitmap & BIT(ii)) {
1060 selected_rates[jj++] = 1061 selected_rates[jj++] =
1061 (rsi_rates[ii + rate_table_offset].bitrate / 5); 1062 (rsi_rates[ii + rate_table_offset].bitrate / 5);
@@ -1103,7 +1104,7 @@ static int rsi_send_auto_rate_request(struct rsi_common *common)
1103 } 1104 }
1104 1105
1105 for (; ii < RSI_TBL_SZ; ii++) 1106 for (; ii < RSI_TBL_SZ; ii++)
1106 auto_rate->supported_rates[ii] = min_rate; 1107 auto_rate->supported_rates[ii] = cpu_to_le16(min_rate);
1107 1108
1108 auto_rate->num_supported_rates = cpu_to_le16(num_supported_rates * 2); 1109 auto_rate->num_supported_rates = cpu_to_le16(num_supported_rates * 2);
1109 auto_rate->moderate_rate_inx = cpu_to_le16(num_supported_rates / 2); 1110 auto_rate->moderate_rate_inx = cpu_to_le16(num_supported_rates / 2);