summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKees Cook <keescook@chromium.org>2014-06-10 09:57:00 -0700
committerRob Herring <robh@kernel.org>2014-06-16 13:31:44 -0500
commit28d3ee40ef5ad488f4ad3376d8f237b9502cecfb (patch)
treec6346191a1c86abfe2d454e9ecc0beaebb020ad4
parente1319ea5db6dee48b7fa3a5822c3940dc649ee6a (diff)
of: avoid format string parsing in kobject names
This makes sure a format string cannot leak into the kobject name that is constructed. (And splits the >80 character line.) Signed-off-by: Kees Cook <keescook@chromium.org> Signed-off-by: Rob Herring <robh@kernel.org>
-rw-r--r--drivers/of/base.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/of/base.c b/drivers/of/base.c
index 8368d96ae7b4..f27d922eaece 100644
--- a/drivers/of/base.c
+++ b/drivers/of/base.c
@@ -227,7 +227,8 @@ static int __of_node_add(struct device_node *np)
np->kobj.kset = of_kset;
if (!np->parent) {
/* Nodes without parents are new top level trees */
- rc = kobject_add(&np->kobj, NULL, safe_name(&of_kset->kobj, "base"));
+ rc = kobject_add(&np->kobj, NULL, "%s",
+ safe_name(&of_kset->kobj, "base"));
} else {
name = safe_name(&np->parent->kobj, kbasename(np->full_name));
if (!name || !name[0])