From: Trond Myklebust <trond.myklebust@fys.uio.no>
To: Peter Staubach <staubach@redhat.com>
Cc: Tom Haynes <tdh@excfb.com>, James Morris <jmorris@namei.org>,
"J. Bruce Fields" <bfields@fieldses.org>,
"linux-nfs@vger.kernel.org" <linux-nfs@vger.kernel.org>,
Christoph Hellwig <hch@infradead.org>,
Casey Schaufler <casey@schaufler-ca.com>,
"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>
Subject: Re: [PATCH 0/4][RFC] NFSv3: implement extended attribute (XATTR) protocol
Date: Mon, 12 Oct 2009 18:55:58 -0400 [thread overview]
Message-ID: <1255388158.3711.57.camel@heimdal.trondhjem.org> (raw)
In-Reply-To: <4AD384BE.2090008@redhat.com>
On Mon, 2009-10-12 at 15:34 -0400, Peter Staubach wrote:
> > So, is this a new side band protocol or an extension to NFSv3?
> >
>
> This is a side band protocol designed to allow the setting
> and getting of Linux style extended attributes. They don't
> quite match the Solaris style sub-files approach, but I
> think could be implemented on top of the sub-files approach.
Sub-files are really a different kettle of fish, since they don't have
any side-effects on the main file itself.
xattrs are basically three different sets of objects bundled into one
set of syscall interfaces.
1. There is a set of 'user' extended attributes, which are
basically arbitrary length named strings. Anyone with read
access to the file can read them, and anyone with write access
can set them. Setting or clearing a user attribute has no
side-effects on the parent file. The most common usage for these
strings appears to be to annotate the file with search metadata
(c.f. beagle)...
2. There are a set of 'trusted' extended attributes. These are
similar to user attributes, in that they have no side-effects,
however you need to use a privileged process in order to set or
read them.
3. The 'system' and 'security' extended attributes are where all
hell breaks loose. These provide storage for things like posix
acls, and selinux security contexts. Setting or clearing these
attributes will almost certainly have side-effects on the parent
file itself, so you really want to be very careful with what you
stuff into them.
> > Is there some document describing the problem being solved?
> >
>
> Not exactly, or at least, not that I've seen. There is a need
> to support general Linux style extended attributes over NFSv3
> and NFSv4 prior to 4.2. This will be used in the short term
> to solve some of the base issues that are being addressed by
> the Labeled NFS work currently underway in the IETF WG. That
> work is much more extensive and designed to be a better
> solution, but we need something before that work will complete.
>
> I am seeking to discover whether this will be a Linux to
> Linux only solution always or whether other vendors might be
> amenable to considering implementing this support.
I don't see how it can be anything but a Linux to Linux, single
distribution only solution if you support setting and clearing 'system'
and 'security' extended attributes, since there appears to be no method
outlined here for negotiating which features the client and server
support.
Without such negotiation (or the requirement that the client and server
be completely homogeneous), how do I, for instance, stop the
'restorecon' utility running on my client from breaking my mail server
process running on a completely different machine when it decides to
reset the 'security.selinux' label on my ~/mail folder?
Cheers,
Trond
next prev parent reply other threads:[~2009-10-12 22:55 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-19 15:09 [PATCH 0/4][RFC] NFSv3: implement extended attribute (XATTR) protocol James Morris
2009-09-19 15:11 ` [PATCH 1/4] NFSv3: convert client to generic xattr API James Morris
2009-09-19 15:12 ` [PATCH 2/4] NFSv3: add xattr API config option for client James Morris
2009-09-19 15:13 ` [PATCH 3/4] NFSv3: add client implementation of XATTR protocol James Morris
2009-09-19 15:14 ` [PATCH 4/4] NFSv3: add server " James Morris
[not found] ` <alpine.LRH.2.00.0909200020360.31818-CK9fWmtY32x9JUWOpEiw7w@public.gmane.org>
2009-09-19 17:30 ` [PATCH 0/4][RFC] NFSv3: implement extended attribute (XATTR) protocol Casey Schaufler
2009-09-20 5:13 ` James Morris
2009-09-22 12:47 ` Christoph Hellwig
2009-09-22 13:03 ` James Morris
[not found] ` <alpine.LRH.2.00.0909222253470.21052-CK9fWmtY32x9JUWOpEiw7w@public.gmane.org>
2009-09-22 13:07 ` Christoph Hellwig
2009-10-06 15:18 ` Peter Staubach
2009-10-09 0:39 ` James Morris
[not found] ` <alpine.LRH.2.00.0910091132130.32154-CK9fWmtY32x9JUWOpEiw7w@public.gmane.org>
2009-10-09 23:14 ` Christoph Hellwig
2009-10-12 17:50 ` Peter Staubach
2009-10-12 19:26 ` Tom Haynes
[not found] ` <CA06CB5C-6084-45AA-B185-FBDA7E3B9754-8AdZ+HgO7noAvxtiuMwx3w@public.gmane.org>
2009-10-12 19:34 ` Peter Staubach
2009-10-12 22:55 ` Trond Myklebust [this message]
[not found] ` <1255388158.3711.57.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-10-12 23:08 ` J. Bruce Fields
2009-10-13 7:02 ` James Morris
[not found] ` <alpine.LRH.2.00.0910131733070.28896-CK9fWmtY32x9JUWOpEiw7w@public.gmane.org>
2009-10-13 18:27 ` Trond Myklebust
[not found] ` <1255458444.3711.113.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-10-14 0:48 ` James Morris
[not found] ` <alpine.LRH.2.00.0910141134410.4671-CK9fWmtY32x9JUWOpEiw7w@public.gmane.org>
2009-10-14 2:05 ` Casey Schaufler
2009-10-14 4:30 ` James Morris
[not found] ` <alpine.LRH.2.00.0910141526530.5279-CK9fWmtY32x9JUWOpEiw7w@public.gmane.org>
2009-10-14 4:50 ` Casey Schaufler
2009-10-14 12:46 ` Peter Staubach
2009-10-14 4:56 ` Dustin Kirkland
2009-10-14 6:02 ` James Morris
2009-10-14 15:05 ` Tyler Hicks
[not found] ` <bf63d7240910080919nf1bf6d0rd94f671d0645f674@mail.gmail.com>
2009-10-08 17:21 ` J. Bruce Fields
2009-10-09 0:31 ` James Morris
2009-10-08 17:22 ` J. Bruce Fields
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=1255388158.3711.57.camel@heimdal.trondhjem.org \
--to=trond.myklebust@fys.uio.no \
--cc=bfields@fieldses.org \
--cc=casey@schaufler-ca.com \
--cc=hch@infradead.org \
--cc=jmorris@namei.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=staubach@redhat.com \
--cc=tdh@excfb.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