[PATCH 3/3] driver: core: add security labels to misc class devnode

From: Namjae Jeon
Date: Fri Jun 05 2015 - 06:11:00 EST


Add support for setting security labels on devtmpfs nodes created
by misc class drivers using misc_register.

Signed-off-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx>
Signed-off-by: Vivek Trivedi <t.vivek@xxxxxxxxxxx>
---
drivers/char/misc.c | 5 +++++
include/linux/miscdevice.h | 2 ++
2 files changed, 7 insertions(+)

diff --git a/drivers/char/misc.c b/drivers/char/misc.c
index 63fb739..42fc006 100644
--- a/drivers/char/misc.c
+++ b/drivers/char/misc.c
@@ -274,6 +274,11 @@ static char *misc_devnode(struct device *dev, umode_t *mode,

if (mode && c->mode)
*mode = c->mode;
+ if (xattr && xattr->value && c->xattr_value) {
+ xattr->name = c->xattr_name;
+ strcpy(xattr->value, c->xattr_value);
+ xattr->value_len = strlen(xattr->value);
+ }
if (c->nodename)
return kstrdup(c->nodename, GFP_KERNEL);
return NULL;
diff --git a/include/linux/miscdevice.h b/include/linux/miscdevice.h
index 819077c..bcc3d8e 100644
--- a/include/linux/miscdevice.h
+++ b/include/linux/miscdevice.h
@@ -64,6 +64,8 @@ struct miscdevice {
const struct attribute_group **groups;
const char *nodename;
umode_t mode;
+ const char *xattr_name;
+ const char *xattr_value;
};

extern int misc_register(struct miscdevice *misc);
--
1.8.5.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/