mbox series

[0/3] virtiofsd xattr name mappings

Message ID 20200803191511.45261-1-dgilbert@redhat.com
Headers show
Series virtiofsd xattr name mappings | expand

Message

Dr. David Alan Gilbert Aug. 3, 2020, 7:15 p.m. UTC
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

Hi,
  This is a first cut of a xattr name mapping option for virtiofsd.
It allows the user of virtiofsd to define a fairly flexible mapping
from the view of the xattr names the host fs has and the ones that the
guest sees.

  The hope is this allows things like:
    a) Different selinux attributes on host/guest
    b) separation of trusted. attributes that clash on overlayfs
    c) support for privileged xattr's in guests running with an
       unprivileged virtiofsd.

There's no apparent standard for this kind of mapping, so I made
it flexible by specifying  a mapping rule in the option.

Prefix's can be added (selectively or globally), xattr's can be
dropped in either direction or passed through.

One example is:
  -o xattrmap=" :ch:p::user.virtiofs.::ch:b:::"

which prepends user.virtiofs. to any xattr name generated by the guest
and blocks any non-prefix'd name.
This should be able to match existing filesystems with xattr's from
other implementations as well given the write map rules.

(TODO: My rst is a bit rusty, so I know I need to rework the docs in the first
patch).

Dave

Dr. David Alan Gilbert (3):
  tools/virtiofsd: xattr name mappings: Add option
  tools/virtiofsd: xattr name mappings: Map client xattr names
  tools/virtiofsd: xattr name mappings: Map host xattr names

 docs/tools/virtiofsd.rst         |  46 +++++
 tools/virtiofsd/passthrough_ll.c | 345 ++++++++++++++++++++++++++++++-
 2 files changed, 388 insertions(+), 3 deletions(-)