linux/drivers/leds/trigger
Christian Marangi 259e33cbb1 leds: trigger: netdev: Move size check in set_device_name
GCC 13.2 complains about array subscript 17 is above array bounds of
'char[16]' with IFNAMSIZ set to 16.

The warning is correct but this scenario is impossible.
set_device_name is called by device_name_store (store sysfs entry) and
netdev_trig_activate.

device_name_store already check if size is >= of IFNAMSIZ and return
-EINVAL. (making the warning scenario impossible)

netdev_trig_activate works on already defined interface, where the name
has already been checked and should already follow the condition of
strlen() < IFNAMSIZ.

Aside from the scenario being impossible, set_device_name can be
improved to both mute the warning and make the function safer.
To make it safer, move size check from device_name_store directly to
set_device_name and prevent any out of bounds scenario.

Cc: stable@vger.kernel.org
Fixes: 28a6a2ef18 ("leds: trigger: netdev: refactor code setting device name")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202309192035.GTJEEbem-lkp@intel.com/
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Link: https://lore.kernel.org/r/20231007131042.15032-1-ansuelsmth@gmail.com
Signed-off-by: Lee Jones <lee@kernel.org>
2023-11-01 11:29:14 +00:00
..
Kconfig leds: triggers: gpio: Rewrite to use trigger-sources 2023-11-01 11:28:58 +00:00
ledtrig-activity.c treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
ledtrig-audio.c leds: trigger: audio: Add an activate callback to ensure the initial brightness is set 2021-08-03 23:57:17 +02:00
ledtrig-backlight.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ledtrig-camera.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ledtrig-cpu.c leds: trigger: ledtrig-cpu:: Fix 'output may be truncated' issue for 'cpu' 2023-11-01 11:28:51 +00:00
ledtrig-default-on.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ledtrig-disk.c leds: Change led_trigger_blink[_oneshot]() delay parameters to pass-by-value 2023-05-25 12:16:27 +01:00
ledtrig-gpio.c leds: triggers: gpio: Rewrite to use trigger-sources 2023-11-01 11:28:58 +00:00
ledtrig-heartbeat.c treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
ledtrig-mtd.c leds: Change led_trigger_blink[_oneshot]() delay parameters to pass-by-value 2023-05-25 12:16:27 +01:00
ledtrig-netdev.c leds: trigger: netdev: Move size check in set_device_name 2023-11-01 11:29:14 +00:00
ledtrig-oneshot.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ledtrig-panic.c kernel.h: split out panic and oops helpers 2021-07-01 11:06:04 -07:00
ledtrig-pattern.c treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
ledtrig-timer.c leds: trigger: remove redundant assignment to variable ret 2020-04-27 14:13:12 +02:00
ledtrig-transient.c treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
ledtrig-tty.c leds: trigger: tty: Do not use LED_ON/OFF constants, use led_blink_set_oneshot instead 2023-08-17 11:58:32 +01:00
Makefile leds: trigger: implement a tty trigger 2021-01-15 10:22:26 +01:00