aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-lapdm.c
diff options
context:
space:
mode:
authorPascal Quantin <pascal.quantin@gmail.com>2015-03-07 16:30:17 +0100
committerPascal Quantin <pascal.quantin@gmail.com>2015-03-07 15:35:09 +0000
commit07d361010d79866bfbb51343f4c7c05b095174d0 (patch)
treeef6d28a7af1fab39ab1155d2732cdb88ce36d45b /epan/dissectors/packet-lapdm.c
parent7a76e3d2e8c90dea0d57ae85e1ce2d639ca47305 (diff)
LAPDm: set captured and reported lengths properly when building the tvb forwarded to subdissectors
Change-Id: I6ab6bfd90a70411703d2fa8b3ff5225cedb8d2fb Reviewed-on: https://code.wireshark.org/review/7578 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-lapdm.c')
-rw-r--r--epan/dissectors/packet-lapdm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/epan/dissectors/packet-lapdm.c b/epan/dissectors/packet-lapdm.c
index 03fdd09d0a..6496f03e4e 100644
--- a/epan/dissectors/packet-lapdm.c
+++ b/epan/dissectors/packet-lapdm.c
@@ -274,14 +274,14 @@ dissect_lapdm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
len = (length & LAPDM_LEN) >> LAPDM_LEN_SHIFT;
/*n_s = (control & XDLC_N_S_MASK) >> XDLC_N_S_SHIFT;*/
m = (length & LAPDM_M) >> LAPDM_M_SHIFT;
- available_length = tvb_reported_length(tvb) - LAPDM_HEADER_LEN;
+ available_length = tvb_captured_length(tvb) - LAPDM_HEADER_LEN;
/* No point in doing anything if no payload
*/
if( !MIN(len, available_length) )
return;
- payload = tvb_new_subset(tvb, LAPDM_HEADER_LEN, MIN(len,available_length), -1);
+ payload = tvb_new_subset(tvb, LAPDM_HEADER_LEN, MIN(len,available_length), len);
/* Potentially segmented I frame
*/