]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
iio: adc: ti-ads1119: fix information leak in triggered buffer
authorJavier Carrasco <javier.carrasco.cruz@gmail.com>
Mon, 25 Nov 2024 21:16:10 +0000 (22:16 +0100)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sat, 7 Dec 2024 17:23:42 +0000 (17:23 +0000)
The 'scan' local struct is used to push data to user space from a
triggered buffer, but it has a hole between the sample (unsigned int)
and the timestamp. This hole is never initialized.

Initialize the struct to zero before using it to avoid pushing
uninitialized information to userspace.

Cc: stable@vger.kernel.org
Fixes: a9306887eba4 ("iio: adc: ti-ads1119: Add driver")
Signed-off-by: Javier Carrasco <javier.carrasco.cruz@gmail.com>
Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Link: https://patch.msgid.link/20241125-iio_memset_scan_holes-v1-2-0cb6e98d895c@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/ti-ads1119.c

index e9d9d4d46d3809c02bd9cf2e6874b16919d55d6e..2615a275acb3189fc399508b81640b0fcb11a8d6 100644 (file)
@@ -506,6 +506,8 @@ static irqreturn_t ads1119_trigger_handler(int irq, void *private)
        unsigned int index;
        int ret;
 
+       memset(&scan, 0, sizeof(scan));
+
        if (!iio_trigger_using_own(indio_dev)) {
                index = find_first_bit(indio_dev->active_scan_mask,
                                       iio_get_masklength(indio_dev));