aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-nfs.c
diff options
context:
space:
mode:
authorPascal Quantin <pascal.quantin@gmail.com>2013-04-11 20:00:28 +0000
committerPascal Quantin <pascal.quantin@gmail.com>2013-04-11 20:00:28 +0000
commitfc153bf23b601428ea15e0c3c3801a5c76904b90 (patch)
tree9fd9f4949ee34a65ca53d2cf3450e210ff37d2ba /epan/dissectors/packet-nfs.c
parentbe66273ae4c1a4b15cb171d5aa7848bdc2913f35 (diff)
downloadwireshark-fc153bf23b601428ea15e0c3c3801a5c76904b90.tar.gz
wireshark-fc153bf23b601428ea15e0c3c3801a5c76904b90.tar.bz2
wireshark-fc153bf23b601428ea15e0c3c3801a5c76904b90.zip
From Cal Turney via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8576 :
Add ACE4_INHERITED_ACE flag and NFS4ERR_DELEG_REVOKED error code. Replace NFS4ERR_NODEV error code by NFS4ERR_DQUOT error code. See RFC 5661 for details. svn path=/trunk/; revision=48825
Diffstat (limited to 'epan/dissectors/packet-nfs.c')
-rw-r--r--epan/dissectors/packet-nfs.c125
1 files changed, 66 insertions, 59 deletions
diff --git a/epan/dissectors/packet-nfs.c b/epan/dissectors/packet-nfs.c
index 17fe1d5f37..d9fc7d726c 100644
--- a/epan/dissectors/packet-nfs.c
+++ b/epan/dissectors/packet-nfs.c
@@ -6131,98 +6131,98 @@ dissect_nfs3_commit_reply(tvbuff_t *tvb, int offset, packet_info *pinfo _U_,
/* NFSv4 Draft Specification, Page 198-199 */
static const value_string names_nfs_nfsstat4[] = {
- { 0, "NFS4_OK" },
- { 1, "NFS4ERR_PERM" },
- { 2, "NFS4ERR_NOENT" },
- { 5, "NFS4ERR_IO" },
- { 6, "NFS4ERR_NXIO" },
- { 13, "NFS4ERR_ACCES" },
- { 17, "NFS4ERR_EXIST" },
- { 18, "NFS4ERR_XDEV" },
- { 19, "NFS4ERR_NODEV" },
- { 20, "NFS4ERR_NOTDIR" },
- { 21, "NFS4ERR_ISDIR" },
- { 22, "NFS4ERR_INVAL" },
- { 27, "NFS4ERR_FBIG" },
- { 28, "NFS4ERR_NOSPC" },
- { 30, "NFS4ERR_ROFS" },
- { 31, "NFS4ERR_MLINK" },
- { 63, "NFS4ERR_NAMETOOLONG" },
- { 66, "NFS4ERR_NOTEMPTY" },
- { 69, "NFS4ERR_DQUOT" },
- { 70, "NFS4ERR_STALE" },
- { 10001, "NFS4ERR_BADHANDLE" },
+ { 0, "NFS4_OK" },
+ { 1, "NFS4ERR_PERM" },
+ { 2, "NFS4ERR_NOENT" },
+ { 5, "NFS4ERR_IO" },
+ { 6, "NFS4ERR_NXIO" },
+ { 13, "NFS4ERR_ACCES" },
+ { 17, "NFS4ERR_EXIST" },
+ { 18, "NFS4ERR_XDEV" },
+ { 19, "NFS4ERR_DQUOT" },
+ { 20, "NFS4ERR_NOTDIR" },
+ { 21, "NFS4ERR_ISDIR" },
+ { 22, "NFS4ERR_INVAL" },
+ { 27, "NFS4ERR_FBIG" },
+ { 28, "NFS4ERR_NOSPC" },
+ { 30, "NFS4ERR_ROFS" },
+ { 31, "NFS4ERR_MLINK" },
+ { 63, "NFS4ERR_NAMETOOLONG" },
+ { 66, "NFS4ERR_NOTEMPTY" },
+ { 69, "NFS4ERR_DQUOT" },
+ { 70, "NFS4ERR_STALE" },
+ { 10001, "NFS4ERR_BADHANDLE" },
{ 10003, "NFS4ERR_BAD_COOKIE" },
- { 10004, "NFS4ERR_NOTSUPP" },
- { 10005, "NFS4ERR_TOOSMALL" },
+ { 10004, "NFS4ERR_NOTSUPP" },
+ { 10005, "NFS4ERR_TOOSMALL" },
{ 10006, "NFS4ERR_SERVERFAULT" },
- { 10007, "NFS4ERR_BADTYPE" },
- { 10008, "NFS4ERR_DELAY" },
- { 10009, "NFS4ERR_SAME" },
- { 10010, "NFS4ERR_DENIED" },
- { 10011, "NFS4ERR_EXPIRED" },
- { 10012, "NFS4ERR_LOCKED" },
- { 10013, "NFS4ERR_GRACE" },
- { 10014, "NFS4ERR_FHEXPIRED" },
+ { 10007, "NFS4ERR_BADTYPE" },
+ { 10008, "NFS4ERR_DELAY" },
+ { 10009, "NFS4ERR_SAME" },
+ { 10010, "NFS4ERR_DENIED" },
+ { 10011, "NFS4ERR_EXPIRED" },
+ { 10012, "NFS4ERR_LOCKED" },
+ { 10013, "NFS4ERR_GRACE" },
+ { 10014, "NFS4ERR_FHEXPIRED" },
{ 10015, "NFS4ERR_SHARE_DENIED" },
- { 10016, "NFS4ERR_WRONGSEC" },
+ { 10016, "NFS4ERR_WRONGSEC" },
{ 10017, "NFS4ERR_CLID_INUSE" },
- { 10018, "NFS4ERR_RESOURCE" },
- { 10019, "NFS4ERR_MOVED" },
+ { 10018, "NFS4ERR_RESOURCE" },
+ { 10019, "NFS4ERR_MOVED" },
{ 10020, "NFS4ERR_NOFILEHANDLE" },
- { 10021, "NFS4ERR_MINOR_VERS_MISMATCH" },
+ { 10021, "NFS4ERR_MINOR_VERS_MISMATCH" },
{ 10022, "NFS4ERR_STALE_CLIENTID" },
{ 10023, "NFS4ERR_STALE_STATEID" },
{ 10024, "NFS4ERR_OLD_STATEID" },
{ 10025, "NFS4ERR_BAD_STATEID" },
- { 10026, "NFS4ERR_BAD_SEQID" },
- { 10027, "NFS4ERR_NOT_SAME" },
+ { 10026, "NFS4ERR_BAD_SEQID" },
+ { 10027, "NFS4ERR_NOT_SAME" },
{ 10028, "NFS4ERR_LOCK_RANGE" },
- { 10029, "NFS4ERR_SYMLINK" },
+ { 10029, "NFS4ERR_SYMLINK" },
{ 10030, "NFS4ERR_READDIR_NOSPC" },
{ 10031, "NFS4ERR_LEASE_MOVED" },
{ 10032, "NFS4ERR_ATTRNOTSUPP" },
- { 10033, "NFS4ERR_NO_GRACE" },
+ { 10033, "NFS4ERR_NO_GRACE" },
{ 10034, "NFS4ERR_RECLAIM_BAD" },
{ 10035, "NFS4ERR_RECLAIM_CONFLICT" },
- { 10036, "NFS4ERR_BADXDR" },
+ { 10036, "NFS4ERR_BADXDR" },
{ 10037, "NFS4ERR_LOCKS_HELD" },
- { 10038, "NFS4ERR_OPENMODE" },
- { 10039, "NFS4ERR_BADOWNER" },
- { 10040, "NFS4ERR_BADCHAR" },
- { 10041, "NFS4ERR_BADNAME" },
- { 10042, "NFS4ERR_BAD_RANGE" },
+ { 10038, "NFS4ERR_OPENMODE" },
+ { 10039, "NFS4ERR_BADOWNER" },
+ { 10040, "NFS4ERR_BADCHAR" },
+ { 10041, "NFS4ERR_BADNAME" },
+ { 10042, "NFS4ERR_BAD_RANGE" },
{ 10043, "NFS4ERR_LOCK_NOTSUPP" },
{ 10044, "NFS4ERR_OP_ILLEGAL" },
- { 10045, "NFS4ERR_DEADLOCK" },
- { 10046, "NFS4ERR_FILE_OPEN" },
+ { 10045, "NFS4ERR_DEADLOCK" },
+ { 10046, "NFS4ERR_FILE_OPEN" },
{ 10047, "NFS4ERR_ADMIN_REVOKED" },
{ 10048, "NFS4ERR_CB_PATH_DOWN" },
- { 10049, "NFS4ERR_BADIOMODE" },
- { 10050, "NFS4ERR_BADLAYOUT" },
- { 10051, "NFS4ERR_BAD_SESSION_DIGEST" },
+ { 10049, "NFS4ERR_BADIOMODE" },
+ { 10050, "NFS4ERR_BADLAYOUT" },
+ { 10051, "NFS4ERR_BAD_SESSION_DIGEST" },
{ 10052, "NFS4ERR_BADSESSION" },
- { 10053, "NFS4ERR_BADSLOT" },
+ { 10053, "NFS4ERR_BADSLOT" },
{ 10054, "NFS4ERR_COMPLETE_ALREADY" },
- { 10055, "NFS4ERR_CONN_NOT_BOUND_TO_SESSION" },
- { 10056, "NFS4ERR_DELEG_ALREADY_WANTED" },
+ { 10055, "NFS4ERR_CONN_NOT_BOUND_TO_SESSION" },
+ { 10056, "NFS4ERR_DELEG_ALREADY_WANTED" },
{ 10057, "NFS4ERR_DIRDELEG_UNAVAIL" },
{ 10058, "NFS4ERR_LAYOUTTRYLATER" },
{ 10059, "NFS4ERR_LAYOUTUNAVAILABLE" },
{ 10060, "NFS4ERR_NOMATCHING_LAYOUT" },
{ 10061, "NFS4ERR_RECALLCONFLICT" },
- { 10062, "NFS4ERR_UNKNOWN_LAYOUTTYPE" },
+ { 10062, "NFS4ERR_UNKNOWN_LAYOUTTYPE" },
{ 10063, "NFS4ERR_SEQ_MISORDERED" },
{ 10064, "NFS4ERR_SEQUENCE_POS" },
{ 10065, "NFS4ERR_REQ_TOO_BIG" },
{ 10066, "NFS4ERR_REP_TOO_BIG" },
- { 10067, "NFS4ERR_REP_TOO_BIG_TO_CACHE" },
- { 10068, "NFS4ERR_RETRY_UNCACHED_REP" },
+ { 10067, "NFS4ERR_REP_TOO_BIG_TO_CACHE" },
+ { 10068, "NFS4ERR_RETRY_UNCACHED_REP" },
{ 10069, "NFS4ERR_UNSAFE_COMPOUND" },
{ 10070, "NFS4ERR_TOO_MANY_OPS" },
{ 10071, "NFS4ERR_OP_NOT_IN_SESSION" },
{ 10072, "NFS4ERR_HASH_ALG_UNSUPP" },
- { 10073, "NFS4ERR_CONN_BINDING_NOT_ENFORCED" },
+ { 10073, "NFS4ERR_CONN_BINDING_NOT_ENFORCED" },
{ 10074, "NFS4ERR_CLIENTID_BUSY" },
{ 10075, "NFS4ERR_PNFS_IO_HOLE" },
{ 10076, "NFS4ERR_SEQ_FALSE_RETRY" },
@@ -6236,6 +6236,7 @@ static const value_string names_nfs_nfsstat4[] = {
{ 10084, "NFS4ERR_DIRDELEG_UNAVAIL" },
{ 10085, "NFS4ERR_REJECT_DELEG" },
{ 10086, "NFS4ERR_RETURNCONFLICT" },
+ { 10087, "NFS4ERR_DELEG_REVOKED" },
{ 0, NULL }
};
static value_string_ext names_nfs_nfsstat4_ext = VALUE_STRING_EXT_INIT(names_nfs_nfsstat4);
@@ -6526,11 +6527,12 @@ dissect_nfs_acemask4(tvbuff_t *tvb, int offset, proto_tree *tree)
/* ACE flag values */
#define ACE4_FILE_INHERIT_ACE 0x00000001
#define ACE4_DIRECTORY_INHERIT_ACE 0x00000002
-#define ACE4_NO_PROPAGATE_INHERIT_ACE 0x00000004
+#define ACE4_NO_PROPAGATE_INHERIT_ACE 0x00000004
#define ACE4_INHERIT_ONLY_ACE 0x00000008
-#define ACE4_SUCCESSFUL_ACCESS_ACE_FLAG 0x00000010
+#define ACE4_SUCCESSFUL_ACCESS_ACE_FLAG 0x00000010
#define ACE4_FAILED_ACCESS_ACE_FLAG 0x00000020
#define ACE4_IDENTIFIER_GROUP 0x00000040
+#define ACE4_INHERITED_ACE 0x00000080
static int
@@ -6592,6 +6594,11 @@ dissect_nfs_ace4(tvbuff_t *tvb, int offset, packet_info *pinfo _U_,
proto_tree_add_text(aceflag_tree, tvb, offset, 4,
"ACE4_IDENTIFIER_GROUP (0x%08x)",
ACE4_IDENTIFIER_GROUP);
+
+ if (aceflag4 & ACE4_INHERITED_ACE)
+ proto_tree_add_text(aceflag_tree, tvb, offset, 4,
+ "ACE4_INHERITED_ACE (0x%08x)",
+ ACE4_INHERITED_ACE);
}
}
}