draft-ietf-nfsv4-xattrs-04.txt   draft-ietf-nfsv4-xattrs-05.txt 
NFSv4 Working Group M. Naik NFSv4 Working Group M. Naik
Internet Draft Nutanix Internet Draft Nutanix
Intended Status: Standards Track M. Eshel Intended Status: Standards Track M. Eshel
Expires: August 4, 2017 IBM Almaden Expires: October 30, 2017 IBM Almaden
January 31, 2017 April 28, 2017
File System Extended Attributes in NFSv4 File System Extended Attributes in NFSv4
draft-ietf-nfsv4-xattrs-04 draft-ietf-nfsv4-xattrs-05
Abstract Abstract
This document describes an OPTIONAL feature extending the NFSv4 This document describes an OPTIONAL feature extending the NFSv4
protocol which allows extended attributes (hereinafter also referred protocol which allows extended attributes (hereinafter also referred
to as xattrs) to be interrogated and manipulated using NFSv4 clients. to as xattrs) to be interrogated and manipulated using NFSv4 clients.
Xattrs are provided by a file system to associate opaque metadata, Xattrs are provided by a file system to associate opaque metadata,
not interpreted by the file system, with files and directories. Such not interpreted by the file system, with files and directories. Such
support is present in many modern local file systems. New file support is present in many modern local file systems. New file
attributes are provided to allow clients to query the server for attributes are provided to allow clients to query the server for
skipping to change at page 9, line 12 skipping to change at page 9, line 12
sh extract.sh < spec.txt > xattr_prot.x sh extract.sh < spec.txt > xattr_prot.x
The effect of the script is to remove leading white space from each The effect of the script is to remove leading white space from each
line, plus a sentinel sequence of "///". line, plus a sentinel sequence of "///".
The initial section of the embedded XDR file header follows. The initial section of the embedded XDR file header follows.
Subsequent XDR descriptions, with the sentinel sequence are embedded Subsequent XDR descriptions, with the sentinel sequence are embedded
throughout the document. throughout the document.
Note that the XDR code contained in this document depends on types Note that the XDR code contained in this document depends on types
from the proposed NFSv4.2 nfs4_prot.x file [RFC7863]. This includes from the NFSv4.2 nfs4_prot.x file [RFC7863]. This includes both nfs
both nfs types that end with a 4, such as nfs_cookie4, count4, etc., types that end with a 4, such as nfs_cookie4, count4, etc., as well
as well as more generic types such as opaque and bool. as more generic types such as opaque and bool.
To produce a compilable XDR file, following procedure is suggested: To produce a compilable XDR file, following procedure is suggested:
o Extract the file nfs4_prot.x as described in [RFC7863]. o Extract the file nfs4_prot.x as described in [RFC7863].
o Extract xattr_prot.x from this document as described above. o Extract xattr_prot.x from this document as described above.
o Apply any changes required for other extensions to be included o Apply any changes required for other extensions to be included
together with the xattr extension. together with the xattr extension.
o Perform modifications to nfs4_prot.x as described by comments o Perform modifications to nfs4_prot.x as described by comments
skipping to change at page 20, line 36 skipping to change at page 20, line 36
| | NFS4ERR_OPENMODE, | | | NFS4ERR_OPENMODE, |
| | NFS4ERR_OP_NOT_IN_SESSION, NFS4ERR_PERM, | | | NFS4ERR_OP_NOT_IN_SESSION, NFS4ERR_PERM, |
| | NFS4ERR_RETRY_UNCACHED_REP, NFS4ERR_ROFS, | | | NFS4ERR_RETRY_UNCACHED_REP, NFS4ERR_ROFS, |
| | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, | | | NFS4ERR_SERVERFAULT, NFS4ERR_STALE, |
| | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_TYPE | | | NFS4ERR_TOO_MANY_OPS, NFS4ERR_WRONG_TYPE |
+----------------------+--------------------------------------------+ +----------------------+--------------------------------------------+
8.5. Modifications to Existing Operations 8.5. Modifications to Existing Operations
In order to provide fine-grained access control to query or modify In order to provide fine-grained access control to query or modify
extended attributes, additions are proposed to the set of access extended attributes, new access rights are defined that can be
rights that can be checked to determine if the client is permitted to checked to determine if the client is permitted to perform the xattr
perform the xattr operation. operation.
Note that in general, as explained in Section 18.1.4 of [RFC5661], a Note that in general, as explained in Section 18.1.4 of [RFC5661], a
client cannot reliably perform an access check with only current file client cannot reliably perform an access check with only current file
attributes and must verify access with the server. attributes and must verify access with the server.
This section extends the semantics of the ACCESS operation documented This section extends the semantics of the ACCESS operation documented
in Section 18.1 of [RFC5661]. Three new access permissions can be in Section 18.1 of [RFC5661]. Three new access permissions can be
requested: requested:
ACCESS4_XAREAD Query a file or directory for its xattr value ACCESS4_XAREAD Query a file or directory for its xattr value
 End of changes. 4 change blocks. 
9 lines changed or deleted 9 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/