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.
This commit is contained in:
Rick Macklem 2019-12-04 23:24:40 +00:00
parent e5a084d020
commit 348d9b567e

View file

@ -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 */
/*
@ -594,6 +629,11 @@
#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
#define NFSWRITE_FILESYNC 2