diff options
author | Anders Broman <anders.broman@ericsson.com> | 2010-10-04 06:16:45 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2010-10-04 06:16:45 +0000 |
commit | 5984fb4888569cca3fbe91c82329b0fdb2e6e1bb (patch) | |
tree | 482b1122412676366af66556d60687cd187d4062 /plugins | |
parent | 6c97a708c9be0552781bce8528a2980f66b49b20 (diff) |
From Yu Zhang:
MRP packet is not correctly parsed in PROFINET multiple write record request.
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5267
svn path=/trunk/; revision=34358
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/profinet/packet-dcerpc-pn-io.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/plugins/profinet/packet-dcerpc-pn-io.c b/plugins/profinet/packet-dcerpc-pn-io.c index 50747f2da7..299c0caa12 100644 --- a/plugins/profinet/packet-dcerpc-pn-io.c +++ b/plugins/profinet/packet-dcerpc-pn-io.c @@ -7463,8 +7463,9 @@ dissect_IODWriteReq(tvbuff_t *tvb, int offset, offset = dissect_IODWriteReq(tvb, offset, pinfo, tree, drep, ar); } } else { + tvbuff_t *tvb_new = tvb_new_subset(tvb, offset, u32RecDataLen, u32RecDataLen); /* RecordDataWrite */ - offset = dissect_RecordDataWrite(tvb, offset, pinfo, tree, drep, u16Index, u32RecDataLen); + offset += dissect_RecordDataWrite(tvb_new, 0, pinfo, tree, drep, u16Index, u32RecDataLen); /* Padding */ switch(offset % 4) { |