nsfs: add ioctl to get an owning user namespace for ns file descriptor
authorAndrey Vagin <avagin@openvz.org>
Tue, 6 Sep 2016 07:47:14 +0000 (00:47 -0700)
committerEric W. Biederman <ebiederm@xmission.com>
Fri, 23 Sep 2016 00:59:40 +0000 (19:59 -0500)
commit6786741dbf99e44fb0c0ed85a37582b8a26f1c3b
treec6d4f7bbb9920c79f6a6393d0900bd850507c37a
parentbcac25a58bfc6bd79191ac5d7afb49bea96da8c9
nsfs: add ioctl to get an owning user namespace for ns file descriptor

Each namespace has an owning user namespace and now there is not way
to discover these relationships.

Understending namespaces relationships allows to answer the question:
what capability does process X have to perform operations on a resource
governed by namespace Y?

After a long discussion, Eric W. Biederman proposed to use ioctl-s for
this purpose.

The NS_GET_USERNS ioctl returns a file descriptor to an owning user
namespace.
It returns EPERM if a target namespace is outside of a current user
namespace.

v2: rename parent to relative

v3: Add a missing mntput when returning -EAGAIN --EWB

Acked-by: Serge Hallyn <serge@hallyn.com>
Link: https://lkml.org/lkml/2016/7/6/158
Signed-off-by: Andrei Vagin <avagin@openvz.org>
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
fs/nsfs.c
include/uapi/linux/nsfs.h [new file with mode: 0644]