From 7d65b573f2734017be416f31852c4ede42bd987b Mon Sep 17 00:00:00 2001 From: Michael Mann Date: Sun, 9 Jul 2017 13:47:59 -0400 Subject: Have register_decode_as_next_proto create dissector table. For protocols that have don't have a unique identifier for their payload, have register_decode_as_next_proto be a one stop shop to create Decode As functionality and a dissector table of type FT_NONE. Change-Id: Ic1f2e9ed0aee0554a4eb8f232630b99c0604dfc0 Reviewed-on: https://code.wireshark.org/review/22575 Petri-Dish: Michael Mann Tested-by: Petri Dish Buildbot Reviewed-by: Michael Mann --- epan/dissectors/packet-aruba-erm.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'epan/dissectors/packet-aruba-erm.c') diff --git a/epan/dissectors/packet-aruba-erm.c b/epan/dissectors/packet-aruba-erm.c index d27bd87cc6..207c0afd37 100644 --- a/epan/dissectors/packet-aruba-erm.c +++ b/epan/dissectors/packet-aruba-erm.c @@ -205,11 +205,7 @@ dissect_aruba_erm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* dat { int offset = 0; - /* - * Implement "Decode As", as Aruba ERM doesn't - * have a unique identifier to determine subdissector - */ - if (!dissector_try_uint(aruba_erm_subdissector_table, 0, tvb, pinfo, tree)) { + if (!dissector_try_payload(aruba_erm_subdissector_table, tvb, pinfo, tree)) { dissect_aruba_erm_common(tvb, pinfo, tree, &offset); /* Add Expert info how decode...*/ @@ -432,11 +428,9 @@ proto_register_aruba_erm(void) expert_register_field_array(expert_aruba_erm, ei, array_length(ei)); register_dissector("aruba_erm", dissect_aruba_erm, proto_aruba_erm); - aruba_erm_subdissector_table = register_dissector_table( - "aruba_erm.type", "Aruba ERM Type", proto_aruba_erm, - FT_UINT32, BASE_DEC); - register_decode_as_next_proto("aruba_erm", "Aruba ERM Type", "aruba_erm.type", (build_label_func*)&aruba_erm_prompt); + aruba_erm_subdissector_table = register_decode_as_next_proto(proto_aruba_erm, "Aruba ERM Type", "aruba_erm.type", + "Aruba ERM Type", (build_label_func*)&aruba_erm_prompt); } void -- cgit v1.2.3