aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-q931.c
diff options
context:
space:
mode:
authorJakub Zawadzki <darkjames-ws@darkjames.pl>2013-11-16 01:10:05 +0000
committerJakub Zawadzki <darkjames-ws@darkjames.pl>2013-11-16 01:10:05 +0000
commitea73d4a55cf10850c61ed35d58fd9c9a191023f3 (patch)
tree87fd46511932572dfcec12f2e1630ea289e9a512 /epan/dissectors/packet-q931.c
parent09dc9a3d0a029fc669e09b3d2ff468b07b9b0c7b (diff)
Avoid calling find_dissector(), cache result of [new_]register_dissector()
svn path=/trunk/; revision=53353
Diffstat (limited to 'epan/dissectors/packet-q931.c')
-rw-r--r--epan/dissectors/packet-q931.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/epan/dissectors/packet-q931.c b/epan/dissectors/packet-q931.c
index b1fa92a732..77ca32ab80 100644
--- a/epan/dissectors/packet-q931.c
+++ b/epan/dissectors/packet-q931.c
@@ -60,6 +60,9 @@ static gboolean have_valid_q931_pi=FALSE;
static q931_packet_info *q931_pi=NULL;
static int q931_tap = -1;
+static dissector_handle_t q931_handle;
+static dissector_handle_t q931_over_ip_handle;
+
static int proto_q931 = -1;
static int hf_q931_discriminator = -1;
static int hf_q931_coding_standard = -1;
@@ -3563,12 +3566,11 @@ proto_register_q931(void)
proto_register_subtree_array(ett, array_length(ett));
register_init_routine(q931_init);
- register_dissector("q931", dissect_q931, proto_q931);
- register_dissector("q931.tpkt", dissect_q931_tpkt, proto_q931);
- q931_tpkt_handle = find_dissector("q931.tpkt");
+ q931_handle = register_dissector("q931", dissect_q931, proto_q931);
+ q931_tpkt_handle = register_dissector("q931.tpkt", dissect_q931_tpkt, proto_q931);
q931_tpkt_pdu_handle = create_dissector_handle(dissect_q931_tpkt_pdu,
proto_q931);
- register_dissector("q931.over_ip", dissect_q931_over_ip, proto_q931);
+ q931_over_ip_handle = register_dissector("q931.over_ip", dissect_q931_over_ip, proto_q931);
register_dissector("q931.ie", dissect_q931_ie_cs0, proto_q931);
register_dissector("q931.ie.cs7", dissect_q931_ie_cs7, proto_q931);
@@ -3594,13 +3596,7 @@ proto_register_q931(void)
void
proto_reg_handoff_q931(void)
{
- dissector_handle_t q931_handle;
- dissector_handle_t q931_over_ip_handle;
-
- q931_handle = find_dissector("q931");
dissector_add_uint("lapd.sapi", LAPD_SAPI_Q931, q931_handle);
-
- q931_over_ip_handle = find_dissector("q931.over_ip");
dissector_add_uint("sctp.ppi", H323_PAYLOAD_PROTOCOL_ID, q931_over_ip_handle);
/*