linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Seth Forshee <seth.forshee@canonical.com>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Miklos Szeredi <miklos@szeredi.hu>,
	"Eric W. Biederman" <ebiederm@xmission.com>,
	"Serge H. Hallyn" <serge.hallyn@ubuntu.com>,
	Michael j Theall <mtheall@us.ibm.com>,
	fuse-devel@lists.sourceforge.net,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Linux FS Devel <linux-fsdevel@vger.kernel.org>,
	seth.forshee@canonical.com
Subject: Re: [PATCH v5 4/4] fuse: Allow user namespace mounts
Date: Wed, 22 Oct 2014 19:22:00 -0500	[thread overview]
Message-ID: <20141023002200.GA138443@ubuntu-hedt> (raw)
In-Reply-To: <CALCETrV_4euS+iDi3imBvBW3L7sutQ6kGJ1Z9CRHUPRL7n9v0g@mail.gmail.com>

On Wed, Oct 22, 2014 at 02:51:56PM -0700, Andy Lutomirski wrote:
> On Wed, Oct 22, 2014 at 2:24 PM, Seth Forshee
> <seth.forshee@canonical.com> wrote:
> > Cc: Eric W. Biederman <ebiederm@xmission.com>
> > Cc: Serge H. Hallyn <serge.hallyn@ubuntu.com>
> > Cc: Andy Lutomirski <luto@amacapital.net>
> > Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
> > ---
> >  fs/fuse/inode.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c
> > index b88b5a780228..7d0e73e36e7b 100644
> > --- a/fs/fuse/inode.c
> > +++ b/fs/fuse/inode.c
> > @@ -1201,7 +1201,7 @@ static void fuse_kill_sb_anon(struct super_block *sb)
> >  static struct file_system_type fuse_fs_type = {
> >         .owner          = THIS_MODULE,
> >         .name           = "fuse",
> > -       .fs_flags       = FS_HAS_SUBTYPE,
> > +       .fs_flags       = FS_HAS_SUBTYPE | FS_USERNS_MOUNT,
> >         .mount          = fuse_mount,
> >         .kill_sb        = fuse_kill_sb_anon,
> >  };
> > @@ -1233,7 +1233,7 @@ static struct file_system_type fuseblk_fs_type = {
> >         .name           = "fuseblk",
> >         .mount          = fuse_mount_blk,
> >         .kill_sb        = fuse_kill_sb_blk,
> > -       .fs_flags       = FS_REQUIRES_DEV | FS_HAS_SUBTYPE,
> > +       .fs_flags       = FS_REQUIRES_DEV | FS_HAS_SUBTYPE | FS_USERNS_MOUNT,
> >  };
> >  MODULE_ALIAS_FS("fuseblk");
> >
> > --
> > 1.9.1
> >
> 
> This is mostly a sign of my ignorance, but how does this actually end
> up working?  I assume that the mounter opens /dev/fuse and then passes
> the fd to the mount call.  Which userns is captured?  The opener of
> /dev/fuse or the mounter of the fs?

You're correct that the mounter passes the fd to /dev/fuse to the mount
call. The namespace of the mounter is used, but there's also a check to
make sure that's the same as that of the opener of /dev/fuse, otherwise
the mount fails.

Seth

  reply	other threads:[~2014-10-23  0:22 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-22 21:24 [PATCH v5 0/4] fuse: Add support for mounts from pid/user namespaces Seth Forshee
2014-10-22 21:24 ` [PATCH v5 1/4] fuse: Add support for pid namespaces Seth Forshee
2014-11-11 13:27   ` Miklos Szeredi
2014-11-11 15:24     ` Seth Forshee
2014-11-11 15:39       ` Andy Lutomirski
2014-11-11 16:26         ` Seth Forshee
2014-11-12 12:07       ` Miklos Szeredi
2014-11-12 14:33         ` Seth Forshee
2014-10-22 21:24 ` [PATCH v5 2/4] fuse: Support fuse filesystems outside of init_user_ns Seth Forshee
2014-10-22 21:47   ` Andy Lutomirski
2014-11-11 14:04   ` Miklos Szeredi
2014-11-11 15:27     ` Seth Forshee
2014-11-11 15:37     ` Eric W. Biederman
2014-11-12 13:09       ` Miklos Szeredi
2014-11-12 16:22         ` Seth Forshee
2014-11-18 15:21           ` Seth Forshee
2014-11-18 17:09             ` Andy Lutomirski
2014-11-18 17:13               ` Seth Forshee
2014-11-18 17:19                 ` Andy Lutomirski
2014-11-19  8:50             ` Miklos Szeredi
2014-11-19 10:38               ` Miklos Szeredi
2014-11-19 14:09                 ` Serge E. Hallyn
2014-11-21 16:44                   ` Seth Forshee
2014-11-21 17:19                     ` Andy Lutomirski
2014-11-21 18:14                     ` Eric W. Biederman
2014-11-21 18:25                       ` Andy Lutomirski
2014-11-21 18:27                       ` Seth Forshee
2014-11-21 18:38                       ` Andy Lutomirski
2014-10-22 21:24 ` [PATCH v5 3/4] fuse: Restrict allow_other to the superblock's namespace or a descendant Seth Forshee
2014-10-22 21:48   ` Andy Lutomirski
2014-11-11 15:27   ` Miklos Szeredi
2014-11-11 15:37     ` Seth Forshee
2014-10-22 21:24 ` [PATCH v5 4/4] fuse: Allow user namespace mounts Seth Forshee
2014-10-22 21:51   ` Andy Lutomirski
2014-10-23  0:22     ` Seth Forshee [this message]
2014-10-23  2:19       ` Andy Lutomirski
2014-11-03 17:15 ` [PATCH v5 0/4] fuse: Add support for mounts from pid/user namespaces Seth Forshee
2014-11-03 17:17   ` Andy Lutomirski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20141023002200.GA138443@ubuntu-hedt \
    --to=seth.forshee@canonical.com \
    --cc=ebiederm@xmission.com \
    --cc=fuse-devel@lists.sourceforge.net \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=miklos@szeredi.hu \
    --cc=mtheall@us.ibm.com \
    --cc=serge.hallyn@ubuntu.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).