From 6d4efd424682f90896d5237ede4326416b6fa97d Mon Sep 17 00:00:00 2001 From: Dennis Brentjes Date: Sun, 30 Oct 2016 19:58:50 +0100 Subject: Fixes some memory leaks and consequent incorrect frees. --- node/node.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'node/node.cpp') diff --git a/node/node.cpp b/node/node.cpp index f5c8dbe..2e5fd32 100644 --- a/node/node.cpp +++ b/node/node.cpp @@ -93,7 +93,8 @@ void Node::handle_node_initialization(const cmix_proto::Initialization& init) api.element_to_array(&data, &len, network_key); sec.set_secret_key(data, len); - free(data); + + api.free_buffer(data); next_node.async_send(sec); } else { @@ -104,7 +105,7 @@ void Node::handle_node_initialization(const cmix_proto::Initialization& init) cmix_proto::Initialization init; init.set_public_share(buffer, len); - free(buffer); + api.free_buffer(buffer); BOOST_LOG_TRIVIAL(trace) << "Sending intialization"; next_node.async_send(init); @@ -156,11 +157,11 @@ void Node::handle_node_prepre(cmix_proto::PrePre const& pre) { api.element_to_array(&buffer, &len, new_random_element); prepre.add_r_er(buffer, len); - free(buffer); + api.free_buffer(buffer); api.element_to_array(&buffer, &len, new_message_element); prepre.add_m_er(buffer, len); - free(buffer); + api.free_buffer(buffer); api.free_group_element(random_element); api.free_group_element(message_element); @@ -224,11 +225,11 @@ void Node::handle_client_keyexchange(ClientConnections::key_type handle, cmix_pr api.element_to_array(&buffer, &len, keypair.pub); exchange.set_public_key(buffer, len); - free(buffer); + api.free_buffer(buffer); api.element_to_array(&buffer, &len, ex_val); exchange.set_value(buffer, len); - free(buffer); + api.free_buffer(buffer); api.free_group_element(ex_val); @@ -339,15 +340,14 @@ void Node::start_precomputation() { api.element_to_array(&buffer, &len, random_element); prepre.add_m_er(buffer, len); - free(buffer); + api.free_buffer(buffer); api.element_to_array(&buffer, &len, message_element); prepre.add_m_er(buffer, len); - free(buffer); + api.free_buffer(buffer); next_node.async_send(prepre); - //ToDo generate permutation. precomputation_data.emplace_back(MixData{r, s, pair.first, *perm_it++}); api.free_group_element(random_element); -- cgit v1.2.3-70-g09d2