From 726c3e734871747854475792050311a4254205ac Mon Sep 17 00:00:00 2001 From: =?utf8?q?Philipp=20T=C3=B6lke?= Date: Tue, 2 Aug 2011 07:34:30 +0000 Subject: [PATCH] memory-leaks --- src/vpn/gnunet-daemon-exit.c | 1 + src/vpn/gnunet-daemon-vpn.c | 1 + src/vpn/gnunet-service-dns.c | 5 ++++- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/vpn/gnunet-daemon-exit.c b/src/vpn/gnunet-daemon-exit.c index d29765627..de735e88c 100644 --- a/src/vpn/gnunet-daemon-exit.c +++ b/src/vpn/gnunet-daemon-exit.c @@ -259,6 +259,7 @@ send_udp_to_peer_notify_callback (void *cls, size_t size, void *buf) send_udp_to_peer_notify_callback, element->cls); /* save the handle */ GNUNET_MESH_tunnel_set_data(*tunnel, th); + GNUNET_free(element); } GNUNET_free (cls); diff --git a/src/vpn/gnunet-daemon-vpn.c b/src/vpn/gnunet-daemon-vpn.c index 45f0f3054..25fa04c97 100644 --- a/src/vpn/gnunet-daemon-vpn.c +++ b/src/vpn/gnunet-daemon-vpn.c @@ -291,6 +291,7 @@ send_pkt_to_peer_notify_callback (void *cls, size_t size, void *buf) send_pkt_to_peer_notify_callback, element->cls); /* save the handle */ GNUNET_MESH_tunnel_set_data(*tunnel, th); + GNUNET_free(element); } GNUNET_free (cls); diff --git a/src/vpn/gnunet-service-dns.c b/src/vpn/gnunet-service-dns.c index 111dd5293..ce27fe6a0 100644 --- a/src/vpn/gnunet-service-dns.c +++ b/src/vpn/gnunet-service-dns.c @@ -302,6 +302,7 @@ mesh_send (void *cls, size_t size, void *buf) element->cb, element->cls); /* save the handle */ GNUNET_MESH_tunnel_set_data(cls_->tunnel, th); + GNUNET_free(element); } return size; @@ -734,6 +735,8 @@ receive_query(void *cls __attribute__((unused)), query_states[dns->s.id].local_port = pkt->src_port; query_states[dns->s.id].remote_ip = pkt->orig_to; query_states[dns->s.id].namelen = strlen((char*)dns->data) + 1; + if (query_states[dns->s.id].name != NULL) + GNUNET_free(query_states[dns->s.id].name); query_states[dns->s.id].name = GNUNET_malloc(query_states[dns->s.id].namelen); memcpy(query_states[dns->s.id].name, dns->data, query_states[dns->s.id].namelen); @@ -859,7 +862,7 @@ receive_query(void *cls __attribute__((unused)), memcpy(&cls_->dns, dns, cls_->hdr.size - sizeof(struct GNUNET_MessageHeader)); GNUNET_SCHEDULER_add_now(send_mesh_query, cls_); - goto out; + goto outfree; } -- 2.25.1