From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Kamal Mostafa To: linux-kernel@vger.kernel.org, stable@vger.kernel.org, kernel-team@lists.ubuntu.com Cc: Alban Crequy , Tejun Heo , Kamal Mostafa Subject: [PATCH 3.13 005/163] cgroup: reject cgroup names with '\n' Date: Thu, 9 Oct 2014 14:00:30 -0700 Message-Id: <1412888588-26755-6-git-send-email-kamal@canonical.com> In-Reply-To: <1412888588-26755-1-git-send-email-kamal@canonical.com> References: <1412888588-26755-1-git-send-email-kamal@canonical.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: 3.13.11.9 -stable review patch. If anyone has any objections, please let me know. ------------------ From: Alban Crequy commit 71b1fb5c4473a5b1e601d41b109bdfe001ec82e0 upstream. /proc//cgroup contains one cgroup path on each line. If cgroup names are allowed to contain "\n", applications cannot parse /proc//cgroup safely. Signed-off-by: Alban Crequy Signed-off-by: Tejun Heo [ kamal: backport to 3.13-stable: fixed in cgroup_create() ] Signed-off-by: Kamal Mostafa --- kernel/cgroup.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kernel/cgroup.c b/kernel/cgroup.c index b44dd49..8e5e0a9 100644 --- a/kernel/cgroup.c +++ b/kernel/cgroup.c @@ -4350,6 +4350,11 @@ static long cgroup_create(struct cgroup *parent, struct dentry *dentry, struct cgroup_subsys *ss; struct super_block *sb = root->sb; + /* Do not accept '\n' to prevent making /proc//cgroup unparsable. + */ + if (strchr(dentry->d_name.name, '\n')) + return -EINVAL; + /* allocate the cgroup and its ID, 0 is reserved for the root */ cgrp = kzalloc(sizeof(*cgrp), GFP_KERNEL); if (!cgrp) -- 1.9.1