[PATCH] pinctrl: fix buffer size for pinctrl_generic_set_state_prefix()

John Keeping john at metanate.com
Wed Sep 7 13:11:42 CEST 2022


This buffer has the concatenated prefix and name written into it, so it
must be large enough to cover both strings plus the terminating NUL.

Fixes: 92c4a95ec7 ("pinctrl: Add new function pinctrl_generic_set_state_prefix()")
Signed-off-by: John Keeping <john at metanate.com>
---
 drivers/pinctrl/pinctrl-generic.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/pinctrl/pinctrl-generic.c b/drivers/pinctrl/pinctrl-generic.c
index ec21d4ff83..8909b57810 100644
--- a/drivers/pinctrl/pinctrl-generic.c
+++ b/drivers/pinctrl/pinctrl-generic.c
@@ -237,7 +237,7 @@ enum pinmux_subnode_type {
 static const char *alloc_name_with_prefix(const char *name, const char *prefix)
 {
 	if (prefix) {
-		char *name_with_prefix = malloc(strlen(prefix) + sizeof("pins"));
+		char *name_with_prefix = malloc(strlen(prefix) + strlen(name) + 1);
 		if (name_with_prefix)
 			sprintf(name_with_prefix, "%s%s", prefix, name);
 		return name_with_prefix;
-- 
2.37.3



More information about the U-Boot mailing list