diff options
author | Michael Mann <mmann78@netscape.net> | 2016-04-23 12:12:42 -0400 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2016-04-23 21:55:12 +0000 |
commit | e19babfc55fb7442f6d765eb76538b847623be41 (patch) | |
tree | 175b5b0bc79025329cf6daed514fdb001d1a826c /epan | |
parent | f7691b13c71ed22373424de482af2d44311ae55b (diff) |
Bounds check the use of ett_zbee_zcl_pwr_prof_enphases array.
Bug: 12358
Change-Id: Iec5dcba388f06e1fd1ef26f0679b06c3dda6a7bf
Reviewed-on: https://code.wireshark.org/review/15072
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan')
-rw-r--r-- | epan/dissectors/packet-zbee-zcl-general.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/epan/dissectors/packet-zbee-zcl-general.c b/epan/dissectors/packet-zbee-zcl-general.c index fe061d2a35..b5a20febbd 100644 --- a/epan/dissectors/packet-zbee-zcl-general.c +++ b/epan/dissectors/packet-zbee-zcl-general.c @@ -10739,7 +10739,7 @@ dissect_zcl_pwr_prof_enphsschednotif(tvbuff_t *tvb, proto_tree *tree, guint *off *offset += 1; /* Scheduled Energy Phases decoding */ - for (i=0 ; i<num_of_sched_phases ; i++) { + for (i=0 ; (i<num_of_sched_phases && i < ZBEE_ZCL_PWR_PROF_NUM_EN_PHS_ETT); i++) { /* Create subtree */ sub_tree = proto_tree_add_subtree_format(tree, tvb, *offset, 1, ett_zbee_zcl_pwr_prof_enphases[i], NULL, "Energy Phase #%u", i); @@ -10826,7 +10826,7 @@ dissect_zcl_pwr_prof_pwrprofnotif(tvbuff_t *tvb, proto_tree *tree, guint *offset *offset += 1; /* Energy Phases decoding */ - for ( i=0 ; i<num_of_transferred_phases ; i++) { + for ( i=0 ; (i<num_of_transferred_phases && i < ZBEE_ZCL_PWR_PROF_NUM_EN_PHS_ETT); i++) { /* Create subtree */ sub_tree = proto_tree_add_subtree_format(tree, tvb, *offset, 1, ett_zbee_zcl_pwr_prof_enphases[i], NULL, "Energy Phase #%u", i); |