diff options
author | Javier Carrasco <javier.carrasco.cruz@gmail.com> | 2024-11-25 22:16:15 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-01-17 13:40:56 +0100 |
commit | 1cca2a666e099aa018e5ab385f0a6e01a3053629 (patch) | |
tree | f704db24883765e30d501b9baa8f3dc0e3fed241 | |
parent | f6fb1c59776b4263634c472a5be8204c906ffc2c (diff) |
iio: light: bh1745: fix information leak in triggered buffer
commit b62fbe3b8eedd3cf3c9ad0b7cb9f72c3f40815f0 upstream.
The 'scan' local struct is used to push data to user space from a
triggered buffer, but it does not set values for inactive channels, as
it only uses iio_for_each_active_channel() to assign new values.
Initialize the struct to zero before using it to avoid pushing
uninitialized information to userspace.
Cc: stable@vger.kernel.org
Fixes: eab35358aae7 ("iio: light: ROHM BH1745 colour sensor")
Signed-off-by: Javier Carrasco <javier.carrasco.cruz@gmail.com>
Link: https://patch.msgid.link/20241125-iio_memset_scan_holes-v1-7-0cb6e98d895c@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/iio/light/bh1745.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/iio/light/bh1745.c b/drivers/iio/light/bh1745.c index 2e458e9d5d85..a025e279df07 100644 --- a/drivers/iio/light/bh1745.c +++ b/drivers/iio/light/bh1745.c @@ -750,6 +750,8 @@ static irqreturn_t bh1745_trigger_handler(int interrupt, void *p) int i; int j = 0; + memset(&scan, 0, sizeof(scan)); + iio_for_each_active_channel(indio_dev, i) { ret = regmap_bulk_read(data->regmap, BH1745_RED_LSB + 2 * i, &value, 2); |