From Weston Andros Adamson via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7010 :
While developing SP4_MACH_CRED support for the linux nfs client, I noticed that wireshark was displaying these bitmasks incorrectly (as fattrs instead of NFS operations). I also noticed that BACKCHANNEL_CTL (a required value in the mask for SP4_MACH_CRED) wasn't in names_nfsv4_operation[], so I added it and verified that we're not missing any other ops. svn path=/trunk/; revision=41851
This commit is contained in:
parent
ac10969fa9
commit
17ce01b48d
|
@ -402,6 +402,7 @@ static int hf_nfs_r_netid = -1;
|
|||
static int hf_nfs_gsshandle4 = -1;
|
||||
static int hf_nfs_r_addr = -1;
|
||||
static int hf_nfs_createmode4 = -1;
|
||||
static int hf_nfs_op_mask = -1;
|
||||
|
||||
/* NFSv4.1 */
|
||||
static int hf_nfs_length4_minlength = -1;
|
||||
|
@ -8086,6 +8087,7 @@ static const value_string names_nfsv4_operation[] = {
|
|||
{ NFS4_OP_VERIFY, "VERIFY" },
|
||||
{ NFS4_OP_WRITE, "WRITE" },
|
||||
{ NFS4_OP_RELEASE_LOCKOWNER, "RELEASE_LOCKOWNER" },
|
||||
{ NFS4_OP_BACKCHANNEL_CTL, "BACKCHANNEL_CTL" },
|
||||
{ NFS4_OP_BIND_CONN_TO_SESSION, "BIND_CONN_TO_SESSION" },
|
||||
{ NFS4_OP_EXCHANGE_ID, "EXCHANGE_ID" },
|
||||
{ NFS4_OP_CREATE_SESSION, "CREATE_SESSION" },
|
||||
|
@ -8359,7 +8361,7 @@ dissect_nfs_state_protect_bitmap4(tvbuff_t *tvb, int offset,
|
|||
proto_item *op_fitem = NULL;
|
||||
proto_tree *op_newftree = NULL;
|
||||
guint32 *bitmap=NULL;
|
||||
guint32 fattr;
|
||||
guint32 op;
|
||||
guint32 i;
|
||||
gint j;
|
||||
guint32 sl;
|
||||
|
@ -8387,10 +8389,10 @@ dissect_nfs_state_protect_bitmap4(tvbuff_t *tvb, int offset,
|
|||
bitmap[i] = tvb_get_ntohl(tvb, offset);
|
||||
sl = 0x00000001;
|
||||
for (j = 0; j < 32; j++) {
|
||||
fattr = 32 * i + j;
|
||||
op = 32 * i + j;
|
||||
if (bitmap[i] & sl) {
|
||||
op_fitem = proto_tree_add_uint(newftree,
|
||||
hf_nfs_recc_attr, tvb, offset, 4, fattr);
|
||||
hf_nfs_op_mask, tvb, offset, 4, op);
|
||||
if (op_fitem == NULL) break;
|
||||
op_newftree = proto_item_add_subtree(op_fitem, ett_nfs_bitmap4);
|
||||
if (op_newftree == NULL) break;
|
||||
|
@ -12262,6 +12264,10 @@ proto_register_nfs(void)
|
|||
"S_IXOTH", "nfs.mode3.xoth", FT_BOOLEAN, 32,
|
||||
TFS(&tfs_yes_no), 0x001, NULL, HFILL }},
|
||||
|
||||
{ &hf_nfs_op_mask, {
|
||||
"op_mask", "nfs.op_mask", FT_UINT32, BASE_DEC,
|
||||
VALS(names_nfsv4_operation), 0, "Operation Mask", HFILL }},
|
||||
|
||||
/* Hidden field for v2, v3, and v4 status */
|
||||
{ &hf_nfs_nfsstat, {
|
||||
"Status", "nfs.status", FT_UINT32, BASE_DEC,
|
||||
|
|
Loading…
Reference in New Issue