diff options
author | Michael Mann <mmann78@netscape.net> | 2017-01-18 23:15:51 -0500 |
---|---|---|
committer | Alexis La Goutte <alexis.lagoutte@gmail.com> | 2017-02-17 21:54:50 +0000 |
commit | 9e1232ee9e7ac3e7a7cb38a099dae66a7b425b4e (patch) | |
tree | 101c3167e0100126f2d949a216227227776cfe2a /epan/dissectors/packet-ieee80211.h | |
parent | b59c87f94a0752efcf4a90b3f8c61a08bcddde8f (diff) |
Convert IEEE802.11 tagged fields into a dissector table
One GIANT switch statement is a little difficult to maintain, so convert each
case into its own function and add them to a dissector table. Many of the
case statements were already their own function, but signatures needed to
be converted into dissector_handle_t
-1 was uses as the protocol for the dissector handles because there isn't
a need to be associated with a protocol. This also allows third-parties
and plugins to add tagged fields outside of Wireshark using the new
dissector table.
Change-Id: I5e4c705dd6a7d99549a27ae684dbde4c47774123
Reviewed-on: https://code.wireshark.org/review/19670
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-ieee80211.h')
-rw-r--r-- | epan/dissectors/packet-ieee80211.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/epan/dissectors/packet-ieee80211.h b/epan/dissectors/packet-ieee80211.h index 54eb5b4ff2..3ad2c7e19a 100644 --- a/epan/dissectors/packet-ieee80211.h +++ b/epan/dissectors/packet-ieee80211.h @@ -39,6 +39,15 @@ typedef struct { proto_node *rsn_first_non_ft_akm_suite; } association_sanity_check_t; +typedef struct ieee80211_tagged_field_data +{ + int ftype; + association_sanity_check_t* sanity_check; + gboolean isDMG; + proto_item* item_tag; + proto_item* item_tag_length; +} ieee80211_tagged_field_data_t; + void dissect_wifi_p2p_ie(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, gint size); int dissect_wifi_p2p_public_action(packet_info *pinfo, proto_tree *tree, |