pinctrl: qcom: sa8775: Limit check for array index not correct

In sa8775p_get_pin_name the limit check for the index into
msm_special_pins_data allows for more elements than exist. Add code to
ensure the array index remains in bounds.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Link: https://lore.kernel.org/r/20250807-pinctrl_qcom-v1-1-42fac6707fd5@linaro.org
Signed-off-by: Casey Connolly <casey.connolly@linaro.org>
This commit is contained in:
Andrew Goodbody
2025-08-13 15:18:49 +02:00
committed by Casey Connolly
parent 8a0bb0b176
commit be12b6e158
+3 -1
View File
@@ -516,7 +516,9 @@ static const char *sa8775p_get_function_name(struct udevice *dev,
static const char *sa8775p_get_pin_name(struct udevice *dev,
unsigned int selector)
{
if (selector >= 149 && selector <= 155)
if (selector > 153)
strcpy(pin_name, "unknown");
else if (selector >= 149)
snprintf(pin_name, MAX_PIN_NAME_LEN,
msm_special_pins_data[selector - 149].name);
else