On Wednesday 07 September 2022 12:11:42 John Keeping wrote:
> 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.

You are right. Not sure why I put there sizeof("pins") (maybe old
version when name was only pins).

Reviewed-by: Pali Rohár <p...@kernel.org>

> Fixes: 92c4a95ec7 ("pinctrl: Add new function 
> pinctrl_generic_set_state_prefix()")
> Signed-off-by: John Keeping <j...@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
> 

Reply via email to