diff options
author | Peter Wu <peter@lekensteyn.nl> | 2015-06-30 01:11:10 +0200 |
---|---|---|
committer | Peter Wu <peter@lekensteyn.nl> | 2015-07-03 23:54:45 +0200 |
commit | 1948fe69bd7d3dba547c1708653ec4fbc08655ac (patch) | |
tree | 220139bf21a43bb8a42fdac2f2e3507f9022fcd6 /plugins/profinet/packet-dcerpc-pn-io.c | |
parent | 57a150f307dbe0469ce3468ca6d4784d0e3f955c (diff) | |
download | wireshark-1948fe69bd7d3dba547c1708653ec4fbc08655ac.tar.gz |
plugins: add cleanup routinescleanup_routine
Destroy the reassembly tables on exit, fix memleak in profinet
dissector.
Change-Id: Id34dbfde42fe715513997452f87cd4fdc328e294
Diffstat (limited to 'plugins/profinet/packet-dcerpc-pn-io.c')
-rw-r--r-- | plugins/profinet/packet-dcerpc-pn-io.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/plugins/profinet/packet-dcerpc-pn-io.c b/plugins/profinet/packet-dcerpc-pn-io.c index c4579c9709..aac79965b5 100644 --- a/plugins/profinet/packet-dcerpc-pn-io.c +++ b/plugins/profinet/packet-dcerpc-pn-io.c @@ -2642,7 +2642,7 @@ dissect_profidrive_value(tvbuff_t *tvb, gint offset, packet_info *pinfo, return(offset); } -GList *pnio_ars; +static GList *pnio_ars; typedef struct pnio_ar_s { /* generic */ @@ -9759,7 +9759,8 @@ static dcerpc_sub_dissector pn_io_dissectors[] = { static void -pnio_reinit( void) { +pnio_cleanup(void) { + g_list_free(pnio_ars); pnio_ars = NULL; } @@ -12251,7 +12252,7 @@ proto_register_pn_io (void) new_register_dissector("pn_io", dissect_PNIO_heur, proto_pn_io); heur_pn_subdissector_list = register_heur_dissector_list("pn_io"); - register_init_routine(pnio_reinit); + register_cleanup_routine(pnio_cleanup); register_dissector_filter("PN-IO AR", pn_io_ar_conv_valid, pn_io_ar_conv_filter); register_dissector_filter("PN-IO AR (with data)", pn_io_ar_conv_valid, pn_io_ar_conv_data_filter); |