aboutsummaryrefslogtreecommitdiff
path: root/src/vpn
diff options
context:
space:
mode:
authorPhilipp Tölke <toelke@in.tum.de>2011-08-02 07:34:30 +0000
committerPhilipp Tölke <toelke@in.tum.de>2011-08-02 07:34:30 +0000
commit726c3e734871747854475792050311a4254205ac (patch)
tree166e549e9ae16abde8485d31fe5a48b9249a66a3 /src/vpn
parentbd359bb40ddc9c55732060b5b2c944a4d2249302 (diff)
downloadgnunet-726c3e734871747854475792050311a4254205ac.tar.gz
gnunet-726c3e734871747854475792050311a4254205ac.zip
memory-leaks
Diffstat (limited to 'src/vpn')
-rw-r--r--src/vpn/gnunet-daemon-exit.c1
-rw-r--r--src/vpn/gnunet-daemon-vpn.c1
-rw-r--r--src/vpn/gnunet-service-dns.c5
3 files changed, 6 insertions, 1 deletions
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)
259 send_udp_to_peer_notify_callback, element->cls); 259 send_udp_to_peer_notify_callback, element->cls);
260 /* save the handle */ 260 /* save the handle */
261 GNUNET_MESH_tunnel_set_data(*tunnel, th); 261 GNUNET_MESH_tunnel_set_data(*tunnel, th);
262 GNUNET_free(element);
262 } 263 }
263 264
264 GNUNET_free (cls); 265 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)
291 send_pkt_to_peer_notify_callback, element->cls); 291 send_pkt_to_peer_notify_callback, element->cls);
292 /* save the handle */ 292 /* save the handle */
293 GNUNET_MESH_tunnel_set_data(*tunnel, th); 293 GNUNET_MESH_tunnel_set_data(*tunnel, th);
294 GNUNET_free(element);
294 } 295 }
295 GNUNET_free (cls); 296 GNUNET_free (cls);
296 297
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)
302 element->cb, element->cls); 302 element->cb, element->cls);
303 /* save the handle */ 303 /* save the handle */
304 GNUNET_MESH_tunnel_set_data(cls_->tunnel, th); 304 GNUNET_MESH_tunnel_set_data(cls_->tunnel, th);
305 GNUNET_free(element);
305 } 306 }
306 307
307 return size; 308 return size;
@@ -734,6 +735,8 @@ receive_query(void *cls __attribute__((unused)),
734 query_states[dns->s.id].local_port = pkt->src_port; 735 query_states[dns->s.id].local_port = pkt->src_port;
735 query_states[dns->s.id].remote_ip = pkt->orig_to; 736 query_states[dns->s.id].remote_ip = pkt->orig_to;
736 query_states[dns->s.id].namelen = strlen((char*)dns->data) + 1; 737 query_states[dns->s.id].namelen = strlen((char*)dns->data) + 1;
738 if (query_states[dns->s.id].name != NULL)
739 GNUNET_free(query_states[dns->s.id].name);
737 query_states[dns->s.id].name = GNUNET_malloc(query_states[dns->s.id].namelen); 740 query_states[dns->s.id].name = GNUNET_malloc(query_states[dns->s.id].namelen);
738 memcpy(query_states[dns->s.id].name, dns->data, query_states[dns->s.id].namelen); 741 memcpy(query_states[dns->s.id].name, dns->data, query_states[dns->s.id].namelen);
739 742
@@ -859,7 +862,7 @@ receive_query(void *cls __attribute__((unused)),
859 memcpy(&cls_->dns, dns, cls_->hdr.size - sizeof(struct GNUNET_MessageHeader)); 862 memcpy(&cls_->dns, dns, cls_->hdr.size - sizeof(struct GNUNET_MessageHeader));
860 GNUNET_SCHEDULER_add_now(send_mesh_query, cls_); 863 GNUNET_SCHEDULER_add_now(send_mesh_query, cls_);
861 864
862 goto out; 865 goto outfree;
863 } 866 }
864 867
865 868