svn commit: r355406 - head/sys/fs/nfs
Rick Macklem
rmacklem at FreeBSD.org
Wed Dec 4 23:24:40 UTC 2019
Author: rmacklem
Date: Wed Dec 4 23:24:40 2019
New Revision: 355406
URL: https://svnweb.freebsd.org/changeset/base/355406
Log:
Add some definitions for NFSv4.2 which will be used by subsequent commits.
This is a preliminary commit of NFSv4.2 definitions that will be used by
subsequent commits which adds NFSv4.2 support to the NFS client and server.
There will be a series of these preliminary commits that will prepare for
a major commit of the NFSv4.2 client/server changes currently found in
subversion under projects/nfsv42/sys.
Modified:
head/sys/fs/nfs/nfsproto.h
Modified: head/sys/fs/nfs/nfsproto.h
==============================================================================
--- head/sys/fs/nfs/nfsproto.h Wed Dec 4 22:41:52 2019 (r355405)
+++ head/sys/fs/nfs/nfsproto.h Wed Dec 4 23:24:40 2019 (r355406)
@@ -78,6 +78,7 @@
#define NFS_FABLKSIZE 512 /* Size in bytes of a block wrt fa_blocks */
#define NFSV4_MINORVERSION 0 /* V4 Minor version */
#define NFSV41_MINORVERSION 1 /* V4 Minor version */
+#define NFSV42_MINORVERSION 2 /* V4 Minor version */
#define NFSV4_CBVERS 1 /* V4 CB Version */
#define NFSV41_CBVERS 4 /* V4.1 CB Version */
#define NFSV4_SMALLSTR 50 /* Strings small enough for stack */
@@ -214,6 +215,22 @@
#define NFSERR_RETURNCONFLICT 10086
#define NFSERR_DELEGREVOKED 10087
+/* NFSv4.2 specific errors. */
+#define NFSERR_PARTNERNOTSUPP 10088
+#define NFSERR_PARTNERNOAUTH 10089
+#define NFSERR_UNIONNOTSUPP 10090
+#define NFSERR_OFFLOADDENIED 10091
+#define NFSERR_WRONGLFS 10092
+#define NFSERR_BADLABEL 10093
+#define NFSERR_OFFLOADNOREQS 10094
+
+/* NFSv4.2 Extended Attribute errors. */
+#define NFSERR_NOXATTR 10095
+#define NFSERR_XATTR2BIG 10096
+
+/* Maximum value of all the NFS error values. */
+#define NFSERR_MAXERRVAL NFSERR_XATTR2BIG
+
#define NFSERR_STALEWRITEVERF 30001 /* Fake return for nfs_commit() */
#define NFSERR_DONTREPLY 30003 /* Don't process request */
#define NFSERR_RETVOID 30004 /* Return void, not error */
@@ -364,6 +381,24 @@
*/
#define NFSV41_NPROCS 56
+/* Additional procedures for NFSv4.2. */
+#define NFSPROC_IOADVISE 56
+#define NFSPROC_ALLOCATE 57
+#define NFSPROC_COPY 58
+#define NFSPROC_SEEK 59
+#define NFSPROC_SEEKDS 60
+
+/* and the ones for the optional Extended attribute support (RFC-8276). */
+#define NFSPROC_GETEXTATTR 61
+#define NFSPROC_SETEXTATTR 62
+#define NFSPROC_RMEXTATTR 63
+#define NFSPROC_LISTEXTATTR 64
+
+/*
+ * Must be defined as one higher than the last NFSv4.2 Proc# above.
+ */
+#define NFSV42_NPROCS 65
+
#endif /* NFS_V3NPROCS */
/*
@@ -593,6 +628,11 @@
#define NFSACCESS_EXTEND 0x08
#define NFSACCESS_DELETE 0x10
#define NFSACCESS_EXECUTE 0x20
+
+/* Additional Extended Attribute access bits RFC-8276. */
+#define NFSACCESS_XAREAD 0x40
+#define NFSACCESS_XAWRITE 0x80
+#define NFSACCESS_XALIST 0x100
#define NFSWRITE_UNSTABLE 0
#define NFSWRITE_DATASYNC 1
More information about the svn-src-all
mailing list