aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexis La Goutte <alexis.lagoutte@gmail.com>2019-04-09 08:30:34 +0200
committerAnders Broman <a.broman58@gmail.com>2019-04-10 04:33:15 +0000
commitb86346eaa0b793974c713036d3e09b9a16e32fe1 (patch)
treee50f605ad40666b64289044bc3c2f3cdfcd12b90
parent8b6eb05bb3ae7b27267a48d7cb248a8732bb9bc8 (diff)
ieee80211: Add length tag check for Mesh Configuration IE
Issue reported by Helge Magnus Keck Change-Id: Ib761b4209d1efc80ca2c107dda9919e71f5865c2 Reviewed-on: https://code.wireshark.org/review/32798 Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
-rw-r--r--epan/dissectors/packet-ieee80211.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/epan/dissectors/packet-ieee80211.c b/epan/dissectors/packet-ieee80211.c
index e64839900a..8fc627487c 100644
--- a/epan/dissectors/packet-ieee80211.c
+++ b/epan/dissectors/packet-ieee80211.c
@@ -21230,6 +21230,15 @@ ieee80211_tag_mesh_peering_mgmt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t
static int
ieee80211_tag_mesh_configuration(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void* data _U_)
{
+
+ ieee80211_tagged_field_data_t* field_data = (ieee80211_tagged_field_data_t*)data;
+ int tag_len = tvb_reported_length(tvb);
+ if (tag_len != 7)
+ {
+ expert_add_info_format(pinfo, field_data->item_tag_length, &ei_ieee80211_tag_length, "Tag Length %u wrong, must be = 7", tag_len);
+ return tvb_captured_length(tvb);
+ }
+
int offset = 0;
proto_item *item;
proto_tree *subtree;