Re: [PATCH] iio: light: apds9306: Fix off by one in apds9306_sampling_freq_get()

From: Subhajit Ghosh
Date: Fri Apr 05 2024 - 03:14:50 EST


On 4/4/24 18:01, Dan Carpenter wrote:
The > comparison needs to be >= to prevent an out of bounds access.

Fixes: 620d1e6c7a3f ("iio: light: Add support for APDS9306 Light Sensor")
Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
---
drivers/iio/light/apds9306.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iio/light/apds9306.c b/drivers/iio/light/apds9306.c
index 4d8490602cd7..49fa6b7d5170 100644
--- a/drivers/iio/light/apds9306.c
+++ b/drivers/iio/light/apds9306.c
@@ -635,7 +635,7 @@ static int apds9306_sampling_freq_get(struct apds9306_data *data, int *val,
if (ret)
return ret;
- if (repeat_rate_idx > ARRAY_SIZE(apds9306_repeat_rate_freq))
+ if (repeat_rate_idx >= ARRAY_SIZE(apds9306_repeat_rate_freq))
return -EINVAL;
Good find.

Reviewed-by: Subhajit Ghosh <subhajit.ghosh@xxxxxxxxxxxxxx>

Regards,
Subhajit Ghosh
*val = apds9306_repeat_rate_freq[repeat_rate_idx][0];