draft-ietf-nfsv4-minorversion2-dot-x-25.txt   draft-ietf-nfsv4-minorversion2-dot-x-26.txt 
NFSv4 T. Haynes NFSv4 T. Haynes
Internet-Draft Primary Data Internet-Draft Primary Data
Intended status: Standards Track May 19, 2014 Intended status: Standards Track May 19, 2014
Expires: November 20, 2014 Expires: November 20, 2014
NFSv4 Minor Version 2 Protocol External Data Representation Standard NFSv4 Minor Version 2 Protocol External Data Representation Standard
(XDR) Description (XDR) Description
draft-ietf-nfsv4-minorversion2-dot-x-25.txt draft-ietf-nfsv4-minorversion2-dot-x-26.txt
Abstract Abstract
This Internet-Draft provides the XDR description for NFSv4 minor This Internet-Draft provides the XDR description for NFSv4 minor
version two. version two.
Requirements Language Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
skipping to change at page 2, line 17 skipping to change at page 2, line 17
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. XDR Description of NFSv4.2 . . . . . . . . . . . . . . . . . 2 1. XDR Description of NFSv4.2 . . . . . . . . . . . . . . . . . 2
2. Security Considerations . . . . . . . . . . . . . . . . . . . 79 2. Security Considerations . . . . . . . . . . . . . . . . . . . 79
3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 79 3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 79
4. Normative References . . . . . . . . . . . . . . . . . . . . 79 4. Normative References . . . . . . . . . . . . . . . . . . . . 79
Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . 79 Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . 79
Appendix B. RFC Editor Notes . . . . . . . . . . . . . . . . . . 79 Appendix B. RFC Editor Notes . . . . . . . . . . . . . . . . . . 79
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 79 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 80
1. XDR Description of NFSv4.2 1. XDR Description of NFSv4.2
This document contains the XDR ([RFC4506]) description of NFSv4.2 This document contains the XDR ([RFC4506]) description of NFSv4.2
protocol ([NFSv42]). In order to facilitate implementations that protocol ([NFSv42]). In order to facilitate implementations that
support all of NFSv4.0, NFSv4.1, and NFSv4.2, the description support all of NFSv4.0, NFSv4.1, and NFSv4.2, the description
includes operations, and other features of NFSv4.0 and NFSv4.1 that includes operations, and other features of NFSv4.0 and NFSv4.1 that
do not apply to NFSv4.2. do not apply to NFSv4.2.
The XDR description is provided in this document in a way that makes The XDR description is provided in this document in a way that makes
skipping to change at page 2, line 48 skipping to change at page 2, line 48
sh extract.sh < spec.txt > nfs4_prot.x sh extract.sh < spec.txt > nfs4_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 XDR description, with the sentinel sequence follows: The XDR description, with the sentinel sequence follows:
/// /* /// /*
/// * This file was machine generated for /// * This file was machine generated for
/// * draft-ietf-nfsv4-minorversion2-25 /// * draft-ietf-nfsv4-minorversion2-26
/// * Last updated Mon May 19 14:37:06 PDT 2014 /// * Last updated Mon May 19 15:15:00 PDT 2014
/// */ /// */
/// /* /// /*
/// * Copyright (C) The IETF Trust (2007-2014) /// * Copyright (C) The IETF Trust (2007-2014)
/// * All Rights Reserved. /// * All Rights Reserved.
/// * /// *
/// * Copyright (C) The Internet Society (1998-2006). /// * Copyright (C) The Internet Society (1998-2006).
/// * All Rights Reserved. /// * All Rights Reserved.
/// */ /// */
/// ///
/// /* /// /*
skipping to change at page 27, line 51 skipping to change at page 27, line 51
/// deviceid4 nfl_deviceid; /// deviceid4 nfl_deviceid;
/// nfl_util4 nfl_util; /// nfl_util4 nfl_util;
/// uint32_t nfl_first_stripe_index; /// uint32_t nfl_first_stripe_index;
/// offset4 nfl_pattern_offset; /// offset4 nfl_pattern_offset;
/// nfs_fh4 nfl_fh_list<>; /// nfs_fh4 nfl_fh_list<>;
/// }; /// };
/// ///
/// % /// %
/// ///
/// ///
/// /*
/// * Operation arrays (the opnum first)
/// */
///
/// enum nfs_opnum4 {
/// OP_ACCESS = 3,
/// OP_CLOSE = 4,
/// OP_COMMIT = 5,
/// OP_CREATE = 6,
/// OP_DELEGPURGE = 7,
/// OP_DELEGRETURN = 8,
/// OP_GETATTR = 9,
/// OP_GETFH = 10,
/// OP_LINK = 11,
/// OP_LOCK = 12,
/// OP_LOCKT = 13,
/// OP_LOCKU = 14,
/// OP_LOOKUP = 15,
/// OP_LOOKUPP = 16,
/// OP_NVERIFY = 17,
/// OP_OPEN = 18,
/// OP_OPENATTR = 19,
/// OP_OPEN_CONFIRM = 20, /* Mandatory not-to-implement */
/// OP_OPEN_DOWNGRADE = 21,
/// OP_PUTFH = 22,
/// OP_PUTPUBFH = 23,
/// OP_PUTROOTFH = 24,
/// OP_READ = 25,
/// OP_READDIR = 26,
/// OP_READLINK = 27,
/// OP_REMOVE = 28,
/// OP_RENAME = 29,
/// OP_RENEW = 30, /* Mandatory not-to-implement */
/// OP_RESTOREFH = 31,
/// OP_SAVEFH = 32,
/// OP_SECINFO = 33,
/// OP_SETATTR = 34,
/// OP_SETCLIENTID = 35, /* Mandatory not-to-implement */
/// OP_SETCLIENTID_CONFIRM = 36, /* Mandatory not-to-implement */
/// OP_VERIFY = 37,
/// OP_WRITE = 38,
/// OP_RELEASE_LOCKOWNER = 39, /* Mandatory not-to-implement */
/// %
/// %/* new operations for NFSv4.1 */
/// %
/// OP_BACKCHANNEL_CTL = 40,
/// OP_BIND_CONN_TO_SESSION = 41,
/// OP_EXCHANGE_ID = 42,
/// OP_CREATE_SESSION = 43,
/// OP_DESTROY_SESSION = 44,
/// OP_FREE_STATEID = 45,
/// OP_GET_DIR_DELEGATION = 46,
/// OP_GETDEVICEINFO = 47,
/// OP_GETDEVICELIST = 48,
/// OP_LAYOUTCOMMIT = 49,
/// OP_LAYOUTGET = 50,
/// OP_LAYOUTRETURN = 51,
/// OP_SECINFO_NO_NAME = 52,
/// OP_SEQUENCE = 53,
/// OP_SET_SSV = 54,
/// OP_TEST_STATEID = 55,
/// OP_WANT_DELEGATION = 56,
/// OP_DESTROY_CLIENTID = 57,
/// OP_RECLAIM_COMPLETE = 58,
/// %
/// %/* new operations for NFSv4.2 */
/// %
/// OP_ALLOCATE = 59,
/// OP_COPY = 60,
/// OP_COPY_NOTIFY = 61,
/// OP_DEALLOCATE = 62,
/// OP_IO_ADVISE = 63,
/// OP_LAYOUTERROR = 64,
/// OP_LAYOUTSTATS = 65,
/// OP_OFFLOAD_CANCEL = 66,
/// OP_OFFLOAD_STATUS = 67,
/// OP_READ_PLUS = 68,
/// OP_SEEK = 69,
/// OP_WRITE_SAME = 70,
/// OP_ILLEGAL = 10044
/// };
///
///
///
/// const ACCESS4_READ = 0x00000001; /// const ACCESS4_READ = 0x00000001;
/// const ACCESS4_LOOKUP = 0x00000002; /// const ACCESS4_LOOKUP = 0x00000002;
/// const ACCESS4_MODIFY = 0x00000004; /// const ACCESS4_MODIFY = 0x00000004;
/// const ACCESS4_EXTEND = 0x00000008; /// const ACCESS4_EXTEND = 0x00000008;
/// const ACCESS4_DELETE = 0x00000010; /// const ACCESS4_DELETE = 0x00000010;
/// const ACCESS4_EXECUTE = 0x00000020; /// const ACCESS4_EXECUTE = 0x00000020;
/// ///
/// struct ACCESS4args { /// struct ACCESS4args {
/// /* CURRENT_FH: object */ /// /* CURRENT_FH: object */
/// uint32_t access; /// uint32_t access;
skipping to change at page 62, line 48 skipping to change at page 64, line 36
/// ///
/// union WRITE_SAME4res switch (nfsstat4 wsr_status) { /// union WRITE_SAME4res switch (nfsstat4 wsr_status) {
/// case NFS4_OK: /// case NFS4_OK:
/// write_response4 resok4; /// write_response4 resok4;
/// default: /// default:
/// void; /// void;
/// }; /// };
/// ///
/// ///
/// /* /// /*
/// * Operation arrays /// * Operation arrays (the rest)
/// */ /// */
/// ///
/// enum nfs_opnum4 {
/// OP_ACCESS = 3,
/// OP_CLOSE = 4,
/// OP_COMMIT = 5,
/// OP_CREATE = 6,
/// OP_DELEGPURGE = 7,
/// OP_DELEGRETURN = 8,
/// OP_GETATTR = 9,
/// OP_GETFH = 10,
/// OP_LINK = 11,
/// OP_LOCK = 12,
/// OP_LOCKT = 13,
/// OP_LOCKU = 14,
/// OP_LOOKUP = 15,
/// OP_LOOKUPP = 16,
/// OP_NVERIFY = 17,
/// OP_OPEN = 18,
/// OP_OPENATTR = 19,
/// OP_OPEN_CONFIRM = 20, /* Mandatory not-to-implement */
/// OP_OPEN_DOWNGRADE = 21,
/// OP_PUTFH = 22,
/// OP_PUTPUBFH = 23,
/// OP_PUTROOTFH = 24,
/// OP_READ = 25,
/// OP_READDIR = 26,
/// OP_READLINK = 27,
/// OP_REMOVE = 28,
/// OP_RENAME = 29,
/// OP_RENEW = 30, /* Mandatory not-to-implement */
/// OP_RESTOREFH = 31,
/// OP_SAVEFH = 32,
/// OP_SECINFO = 33,
/// OP_SETATTR = 34,
/// OP_SETCLIENTID = 35, /* Mandatory not-to-implement */
/// OP_SETCLIENTID_CONFIRM = 36, /* Mandatory not-to-implement */
/// OP_VERIFY = 37,
/// OP_WRITE = 38,
/// OP_RELEASE_LOCKOWNER = 39, /* Mandatory not-to-implement */
/// %
/// %/* new operations for NFSv4.1 */
/// %
/// OP_BACKCHANNEL_CTL = 40,
/// OP_BIND_CONN_TO_SESSION = 41,
/// OP_EXCHANGE_ID = 42,
/// OP_CREATE_SESSION = 43,
/// OP_DESTROY_SESSION = 44,
/// OP_FREE_STATEID = 45,
/// OP_GET_DIR_DELEGATION = 46,
/// OP_GETDEVICEINFO = 47,
/// OP_GETDEVICELIST = 48,
/// OP_LAYOUTCOMMIT = 49,
/// OP_LAYOUTGET = 50,
/// OP_LAYOUTRETURN = 51,
/// OP_SECINFO_NO_NAME = 52,
/// OP_SEQUENCE = 53,
/// OP_SET_SSV = 54,
/// OP_TEST_STATEID = 55,
/// OP_WANT_DELEGATION = 56,
/// OP_DESTROY_CLIENTID = 57,
/// OP_RECLAIM_COMPLETE = 58,
/// %
/// %/* new operations for NFSv4.2 */
/// %
/// OP_ALLOCATE = 59,
/// OP_COPY = 60,
/// OP_COPY_NOTIFY = 61,
/// OP_DEALLOCATE = 62,
/// OP_IO_ADVISE = 63,
/// OP_LAYOUTERROR = 64,
/// OP_LAYOUTSTATS = 65,
/// OP_OFFLOAD_CANCEL = 66,
/// OP_OFFLOAD_STATUS = 67,
/// OP_READ_PLUS = 68,
/// OP_SEEK = 69,
/// OP_WRITE_SAME = 70,
/// OP_ILLEGAL = 10044
/// };
///
/// union nfs_argop4 switch (nfs_opnum4 argop) { /// union nfs_argop4 switch (nfs_opnum4 argop) {
/// case OP_ACCESS: ACCESS4args opaccess; /// case OP_ACCESS: ACCESS4args opaccess;
/// case OP_CLOSE: CLOSE4args opclose; /// case OP_CLOSE: CLOSE4args opclose;
/// case OP_COMMIT: COMMIT4args opcommit; /// case OP_COMMIT: COMMIT4args opcommit;
/// case OP_CREATE: CREATE4args opcreate; /// case OP_CREATE: CREATE4args opcreate;
/// case OP_DELEGPURGE: DELEGPURGE4args opdelegpurge; /// case OP_DELEGPURGE: DELEGPURGE4args opdelegpurge;
/// case OP_DELEGRETURN: DELEGRETURN4args opdelegreturn; /// case OP_DELEGRETURN: DELEGRETURN4args opdelegreturn;
/// case OP_GETATTR: GETATTR4args opgetattr; /// case OP_GETATTR: GETATTR4args opgetattr;
/// case OP_GETFH: void; /// case OP_GETFH: void;
/// case OP_LINK: LINK4args oplink; /// case OP_LINK: LINK4args oplink;
skipping to change at page 66, line 46 skipping to change at page 66, line 52
/// case OP_RECLAIM_COMPLETE: /// case OP_RECLAIM_COMPLETE:
/// RECLAIM_COMPLETE4args /// RECLAIM_COMPLETE4args
/// opreclaim_complete; /// opreclaim_complete;
/// ///
/// /* Operations new to NFSv4.2 */ /// /* Operations new to NFSv4.2 */
/// case OP_ALLOCATE: ALLOCATE4args opallocate; /// case OP_ALLOCATE: ALLOCATE4args opallocate;
/// case OP_COPY: COPY4args opcopy; /// case OP_COPY: COPY4args opcopy;
/// case OP_COPY_NOTIFY: COPY_NOTIFY4args opoffload_notify; /// case OP_COPY_NOTIFY: COPY_NOTIFY4args opoffload_notify;
/// case OP_DEALLOCATE: DEALLOCATE4args opdeallocate; /// case OP_DEALLOCATE: DEALLOCATE4args opdeallocate;
/// case OP_IO_ADVISE: IO_ADVISE4args opio_advise; /// case OP_IO_ADVISE: IO_ADVISE4args opio_advise;
/// case OP_LAYOUTERROR: LAYOUTERRORargs4 oplayouterror; /// case OP_LAYOUTERROR: LAYOUTERROR4args oplayouterror;
/// case OP_LAYOUTSTATS: LAYOUTSTATSargs4 oplayoutstats; /// case OP_LAYOUTSTATS: LAYOUTSTATS4args oplayoutstats;
/// case OP_OFFLOAD_CANCEL: OFFLOAD_CANCEL4args opoffload_cancel; /// case OP_OFFLOAD_CANCEL: OFFLOAD_CANCEL4args opoffload_cancel;
/// case OP_OFFLOAD_STATUS: OFFLOAD_STATUS4args opoffload_status; /// case OP_OFFLOAD_STATUS: OFFLOAD_STATUS4args opoffload_status;
/// case OP_READ_PLUS: READ_PLUS4args opread_plus; /// case OP_READ_PLUS: READ_PLUS4args opread_plus;
/// case OP_SEEK: SEEK4args opseek; /// case OP_SEEK: SEEK4args opseek;
/// case OP_WRITE_SAME: WRITE_SAME4args opwrite_same; /// case OP_WRITE_SAME: WRITE_SAME4args opwrite_same;
/// ///
/// /* Operations not new to NFSv4.1 */ /// /* Operations not new to NFSv4.1 */
/// case OP_ILLEGAL: void; /// case OP_ILLEGAL: void;
/// }; /// };
/// ///
 End of changes. 7 change blocks. 
85 lines changed or deleted 91 lines changed or added

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