[PATCH 2/9] syslog_ns: add syslog_ns into user_namespace

From: Rui Xiang
Date: Sun Jul 28 2013 - 22:36:16 EST


Add a syslog_ns pointer to user_namespace, and make
syslog_ns per user_namespace, not global.

Since syslog_ns is assigned to user_ns, we can have
full capabilities in new user_ns to create a new syslog_ns.

Signed-off-by: Rui Xiang <rui.xiang@xxxxxxxxxx>
---
include/linux/syslog.h | 5 +++++
include/linux/user_namespace.h | 1 +
2 files changed, 6 insertions(+)

diff --git a/include/linux/syslog.h b/include/linux/syslog.h
index 425fafe..62ce47f 100644
--- a/include/linux/syslog.h
+++ b/include/linux/syslog.h
@@ -90,6 +90,11 @@ struct syslog_namespace {
size_t syslog_partial;

int dmesg_restrict;
+
+ /*
+ * user namespace which owns this syslog ns.
+ */
+ struct user_namespace *owner;
};

static inline struct syslog_namespace *get_syslog_ns(
diff --git a/include/linux/user_namespace.h b/include/linux/user_namespace.h
index b6b215f..ce2de5b 100644
--- a/include/linux/user_namespace.h
+++ b/include/linux/user_namespace.h
@@ -28,6 +28,7 @@ struct user_namespace {
unsigned int proc_inum;
bool may_mount_sysfs;
bool may_mount_proc;
+ struct syslog_namespace *syslog_ns;
};

extern struct user_namespace init_user_ns;
--
1.8.2.2


--
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/