diff options
author | Michael Mann <mmann78@netscape.net> | 2017-01-28 19:53:36 -0500 |
---|---|---|
committer | Michael Mann <mmann78@netscape.net> | 2017-01-29 13:29:04 +0000 |
commit | af54b292e60fcdd8d03ec583e2b46c9c51f259a5 (patch) | |
tree | 67a4b61fd3e71ada67f2c27092a6849424759263 /epan/dissectors/packet-ositp.c | |
parent | ed8ac81497c890bc82f161be727c0bb5285dcf12 (diff) |
Register reassembly tables
Register all reassembly tables with a central unit, allowing the
central unit to have the callback that initializes and destroys
the reassembly tables, rather than have dissectors do it individually.
Change-Id: Ic92619c06fb5ba6f1c3012f613cae14982e101d4
Reviewed-on: https://code.wireshark.org/review/19834
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Diffstat (limited to 'epan/dissectors/packet-ositp.c')
-rw-r--r-- | epan/dissectors/packet-ositp.c | 27 |
1 files changed, 10 insertions, 17 deletions
diff --git a/epan/dissectors/packet-ositp.c b/epan/dissectors/packet-ositp.c index 7f9f5e19ef..9e5bd27606 100644 --- a/epan/dissectors/packet-ositp.c +++ b/epan/dissectors/packet-ositp.c @@ -2208,25 +2208,9 @@ static gint dissect_ositp_inactive(tvbuff_t *tvb, packet_info *pinfo, static void cotp_reassemble_init(void) { - /* - * XXX - this is a connection-oriented transport-layer protocol, - * so we should probably use more than just network-layer - * endpoint addresses to match segments together, but the functions - * in addresses_ports_reassembly_table_functions do matching based - * on port numbers, so they won't let us ensure that segments from - * different connections don't get assembled together. - */ - reassembly_table_init(&cotp_reassembly_table, - &addresses_reassembly_table_functions); cotp_dst_ref = 0; } -static void -cotp_reassemble_cleanup(void) -{ - reassembly_table_destroy(&cotp_reassembly_table); -} - void proto_register_cotp(void) { static hf_register_info hf[] = { @@ -2433,7 +2417,16 @@ void proto_register_cotp(void) register_dissector("ositp_inactive", dissect_ositp_inactive, proto_cotp); register_init_routine(cotp_reassemble_init); - register_cleanup_routine(cotp_reassemble_cleanup); + /* + * XXX - this is a connection-oriented transport-layer protocol, + * so we should probably use more than just network-layer + * endpoint addresses to match segments together, but the functions + * in addresses_ports_reassembly_table_functions do matching based + * on port numbers, so they won't let us ensure that segments from + * different connections don't get assembled together. + */ + reassembly_table_register(&cotp_reassembly_table, + &addresses_reassembly_table_functions); } void proto_register_cltp(void) |