From e4c059f67f3b29bcc26b1faf111bf647ac630e04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Valverde?= Date: Thu, 26 Nov 2015 04:44:52 +0000 Subject: Add free_address_wmem(), fix warnings [-Wcast-qual] MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Try to improve address API and also fix some constness warnings by not overloading the 'data' pointer to store malloc'ed buffers (use private pointer for that instead). Second try, now passing test suite. Change-Id: Idc101cd866b6d4f13500c9d59da5c7a38847fb7f Reviewed-on: https://code.wireshark.org/review/13946 Petri-Dish: João Valverde Reviewed-by: Alexis La Goutte Tested-by: Petri Dish Buildbot Reviewed-by: João Valverde --- epan/reassemble.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'epan/reassemble.c') diff --git a/epan/reassemble.c b/epan/reassemble.c index 745b585ddb..e4dcf80b0d 100644 --- a/epan/reassemble.c +++ b/epan/reassemble.c @@ -97,8 +97,8 @@ fragment_addresses_temporary_key(const packet_info *pinfo, const guint32 id, /* * Do a shallow copy of the addresses. */ - key->src = pinfo->src; - key->dst = pinfo->dst; + copy_address_shallow(&key->src, &pinfo->src); + copy_address_shallow(&key->dst, &pinfo->dst); key->id = id; return (gpointer)key; @@ -142,8 +142,8 @@ fragment_addresses_free_persistent_key(gpointer ptr) /* * Free up the copies of the addresses from the old key. */ - g_free((gpointer)key->src.data); - g_free((gpointer)key->dst.data); + free_address(&key->src); + free_address(&key->dst); g_slice_free(fragment_addresses_key, key); } @@ -231,8 +231,8 @@ fragment_addresses_ports_temporary_key(const packet_info *pinfo, const guint32 i /* * Do a shallow copy of the addresses. */ - key->src_addr = pinfo->src; - key->dst_addr = pinfo->dst; + copy_address_shallow(&key->src_addr, &pinfo->src); + copy_address_shallow(&key->dst_addr, &pinfo->dst); key->src_port = pinfo->srcport; key->dst_port = pinfo->destport; key->id = id; @@ -280,8 +280,8 @@ fragment_addresses_ports_free_persistent_key(gpointer ptr) /* * Free up the copies of the addresses from the old key. */ - g_free((gpointer)key->src_addr.data); - g_free((gpointer)key->dst_addr.data); + free_address(&key->src_addr); + free_address(&key->dst_addr); g_slice_free(fragment_addresses_ports_key, key); } -- cgit v1.2.1