aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-epl.c
diff options
context:
space:
mode:
authorMartin Kaiser <wireshark@kaiser.cx>2014-02-19 23:16:38 +0100
committerMartin Kaiser <wireshark@kaiser.cx>2014-02-19 22:18:05 +0000
commit9e00e025982a2bddabe1f4c051786601a554fd3e (patch)
tree49ae1090cdbc41d93059171f10b0ca103bbb453b /epan/dissectors/packet-epl.c
parent2bb54d5e202e9d2837a601ee12e847c45dd903f9 (diff)
fix endless loop
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9786 Change-Id: I336f2bcc14596d64ad2e3f3e8140269996e077f5 Reviewed-on: https://code.wireshark.org/review/260 Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
Diffstat (limited to 'epan/dissectors/packet-epl.c')
-rw-r--r--epan/dissectors/packet-epl.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/epan/dissectors/packet-epl.c b/epan/dissectors/packet-epl.c
index ee765e63b6..251e1c65df 100644
--- a/epan/dissectors/packet-epl.c
+++ b/epan/dissectors/packet-epl.c
@@ -1663,6 +1663,8 @@ dissect_epl_sdo_command_write_multiple_by_index(proto_tree *epl_tree, tvbuff_t *
/* the data is aligned in 4-byte increments, therfore maximum padding is 3 */
padding = tvb_get_guint8 ( tvb, offset + 7 ) & 0x03;
+ if ((guint32)(offset-pyldoffset) >= offsetincrement)
+ break;
datalength = offsetincrement - ( offset - pyldoffset );
/*