summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAndy Adamson <andros@netapp.com>2010-12-14 10:11:57 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2011-01-11 14:17:09 -0500
commit357f54d6b38252737116a6d631f6ac28ded018ed (patch)
tree9f2774fb0685659b4fa2f65b9dee3318902d24c9 /include
parent68c404b18f6fba404b2753622d0459c68ee128ae (diff)
downloadlinux-3.10-357f54d6b38252737116a6d631f6ac28ded018ed.tar.gz
linux-3.10-357f54d6b38252737116a6d631f6ac28ded018ed.tar.bz2
linux-3.10-357f54d6b38252737116a6d631f6ac28ded018ed.zip
NFS fix the setting of exchange id flag
Indicate support for referrals. Do not set any PNFS roles. Check the flags returned by the server for validity. Do not use exchange flags from an old client ID instance when recovering a client ID. Update the EXCHID4_FLAG_XXX set to RFC 5661. Signed-off-by: Andy Adamson <andros@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/nfs4.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/linux/nfs4.h b/include/linux/nfs4.h
index 4925b22219d..9b46300b430 100644
--- a/include/linux/nfs4.h
+++ b/include/linux/nfs4.h
@@ -111,9 +111,13 @@
#define EXCHGID4_FLAG_SUPP_MOVED_REFER 0x00000001
#define EXCHGID4_FLAG_SUPP_MOVED_MIGR 0x00000002
+#define EXCHGID4_FLAG_BIND_PRINC_STATEID 0x00000100
+
#define EXCHGID4_FLAG_USE_NON_PNFS 0x00010000
#define EXCHGID4_FLAG_USE_PNFS_MDS 0x00020000
#define EXCHGID4_FLAG_USE_PNFS_DS 0x00040000
+#define EXCHGID4_FLAG_MASK_PNFS 0x00070000
+
#define EXCHGID4_FLAG_UPD_CONFIRMED_REC_A 0x40000000
#define EXCHGID4_FLAG_CONFIRMED_R 0x80000000
/*
@@ -121,8 +125,8 @@
* they're set in the argument or response, have separate
* invalid flag masks for arg (_A) and resp (_R).
*/
-#define EXCHGID4_FLAG_MASK_A 0x40070003
-#define EXCHGID4_FLAG_MASK_R 0x80070003
+#define EXCHGID4_FLAG_MASK_A 0x40070103
+#define EXCHGID4_FLAG_MASK_R 0x80070103
#define SEQ4_STATUS_CB_PATH_DOWN 0x00000001
#define SEQ4_STATUS_CB_GSS_CONTEXTS_EXPIRING 0x00000002