of: base: use strscpy() to instead of strncpy()
authorXu Panda <xu.panda@zte.com.cn>
Fri, 23 Dec 2022 02:39:12 +0000 (10:39 +0800)
committerRob Herring <robh@kernel.org>
Fri, 6 Jan 2023 03:23:14 +0000 (21:23 -0600)
The implementation of strscpy() is more robust and safer.
That's now the recommended way to copy NUL terminated strings.

Signed-off-by: Xu Panda <xu.panda@zte.com.cn>
Signed-off-by: Yang Yang <yang.yang29@zte.com>
Link: https://lore.kernel.org/r/202212231039128402297@zte.com.cn
Signed-off-by: Rob Herring <robh@kernel.org>
drivers/of/base.c

index d5a5c35eba72ac62d3a06be7956bf97297adb8a1..ac6fde53342f1f0f1c91417b6317cab640d527e4 100644 (file)
@@ -1884,8 +1884,7 @@ static void of_alias_add(struct alias_prop *ap, struct device_node *np,
 {
        ap->np = np;
        ap->id = id;
-       strncpy(ap->stem, stem, stem_len);
-       ap->stem[stem_len] = 0;
+       strscpy(ap->stem, stem, stem_len + 1);
        list_add_tail(&ap->link, &aliases_lookup);
        pr_debug("adding DT alias:%s: stem=%s id=%i node=%pOF\n",
                 ap->alias, ap->stem, ap->id, np);