2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2025-01-04 03:33:58 +08:00
linux-next/drivers/staging/comedi
Ian Abbott fc846e9db6 staging: comedi: addi_apci_1500: check INSN_CONFIG_DIGITAL_TRIG shift
The `INSN_CONFIG` comedi instruction with sub-instruction code
`INSN_CONFIG_DIGITAL_TRIG` includes a base channel in `data[3]`. This is
used as a right shift amount for other bitmask values without being
checked.  Shift amounts greater than or equal to 32 will result in
undefined behavior.  Add code to deal with this, adjusting the checks
for invalid channels so that enabled channel bits that would have been
lost by shifting are also checked for validity.  Only channels 0 to 15
are valid.

Fixes: a8c66b684e ("staging: comedi: addi_apci_1500: rewrite the subdevice support functions")
Cc: <stable@vger.kernel.org> #4.0+: ef75e14a6c: staging: comedi: verify array index is correct before using it
Cc: <stable@vger.kernel.org> #4.0+
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Link: https://lore.kernel.org/r/20200717145257.112660-5-abbotti@mev.co.uk
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-07-20 10:19:02 +02:00
..
drivers staging: comedi: addi_apci_1500: check INSN_CONFIG_DIGITAL_TRIG shift 2020-07-20 10:19:02 +02:00
kcomedilib staging: add missing SPDX lines to Makefile files 2019-04-03 11:10:15 +02:00
comedi_buf.c staging: comedi: use dma_mmap_coherent for DMA-able buffer mmap 2019-06-26 09:32:13 +08:00
comedi_fops.c mmap locking API: convert mmap_sem comments 2020-06-09 09:39:14 -07:00
comedi_internal.h Staging/IIO driver patches for 5.8-rc1 2020-06-07 10:45:08 -07:00
comedi_pci.c staging: comedi: Remove redundant license text 2017-11-28 13:20:46 +01:00
comedi_pci.h Staging: comedi: comedi_pci.h: fixed missing or malformed SPDX-License-Identifier 2018-06-18 10:55:11 +02:00
comedi_pcmcia.c staging: comedi: Remove redundant license text 2017-11-28 13:20:46 +01:00
comedi_pcmcia.h Staging: comedi: comedi_pcmcia.h: fixed missing or malformed SPDX-License-Identifier 2018-06-18 10:55:11 +02:00
comedi_usb.c staging: comedi: Remove redundant license text 2017-11-28 13:20:46 +01:00
comedi_usb.h staging: comedi: comedi_usb.h: SPDX License Identifier is added in the first line 2018-05-31 19:00:53 +02:00
comedi.h staging: comedi: clarify/unify macros for NI macro-defined terminals 2018-11-07 13:08:28 +01:00
comedidev.h staging: comedi: ni_mio_common: Fix divide-by-zero for DIO cmdtest 2019-03-18 07:57:58 +01:00
comedilib.h Staging: comedi: comedilib.h: fixed missing or malformed SPDX-License-Identifier 2018-06-18 10:55:11 +02:00
drivers.c staging: comedi: Add lockdep_assert_held() calls for dev->attach_lock 2019-04-19 14:33:41 +02:00
Kconfig staging: comedi: use help instead of ---help--- in Kconfig 2019-04-19 15:01:50 +02:00
Makefile comedi: move compat ioctl handling to native fops 2020-05-28 20:29:17 -04:00
proc.c proc: introduce proc_create_single{,_data} 2018-05-16 07:23:35 +02:00
range.c comedi: get rid of compat_alloc_user_space() mess in COMEDI_RANGEINFO compat 2020-05-28 20:31:19 -04:00
TODO