forked from OERV-BSP/u-boot
led: fix coverity scan error
The following was reported by Covervity scan:
*** CID 541279: (TAINTED_SCALAR)
/drivers/led/led-uclass.c: 284 in led_get_function_name()
278 if (!ret) {
279 snprintf(uc_plat->name, LED_MAX_NAME_SIZE,
280 "%s:%s-%d",
281 cp ? "" : led_colors[color],
282 func ? func : "", enumerator);
283 } else {
>>> CID 541279: (TAINTED_SCALAR)
>>> Using tainted variable "color" as an index into an array "led_colors".
Fix it.
Addresses-Coverity-ID: 541279 (TAINTED_SCALAR)
Link: https://lists.denx.de/pipermail/u-boot/2025-February/580250.html
Signed-off-by: Heiko Schocher <hs@denx.de>
This commit is contained in:
@@ -273,6 +273,10 @@ static const char *led_get_function_name(struct udevice *dev)
|
||||
/* Now try to detect function label name */
|
||||
func = dev_read_string(dev, "function");
|
||||
cp = dev_read_u32(dev, "color", &color);
|
||||
// prevent coverity scan error CID 541279: (TAINTED_SCALAR)
|
||||
if (color < LED_COLOR_ID_WHITE || color >= LED_COLOR_ID_MAX)
|
||||
cp = -EINVAL;
|
||||
|
||||
if (cp == 0 || func) {
|
||||
ret = dev_read_u32(dev, "function-enumerator", &enumerator);
|
||||
if (!ret) {
|
||||
|
||||
Reference in New Issue
Block a user