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. --- client/cmixclient.cpp | 10 +++++----- client/cmixclient.hpp | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) (limited to 'client') diff --git a/client/cmixclient.cpp b/client/cmixclient.cpp index f05b200..3abe1eb 100644 --- a/client/cmixclient.cpp +++ b/client/cmixclient.cpp @@ -16,17 +16,17 @@ void CMixClient::key_exchange(size_t node_id) { cmix_proto::KeyExchange ke; ke.set_public_key(buffer, len); - - free(buffer); + api.free_buffer(buffer); data.at(node_id).secret_value = api.get_group_element(true); - void* shared_value = api.get_key_exchange_value(data.at(node_id).secret_value); - api.element_to_array(&buffer, &len, shared_value); + GroupElement shared_value = api.get_key_exchange_value(data.at(node_id).secret_value); + api.element_to_array(&buffer, &len, shared_value); ke.set_value(buffer, len); + api.free_buffer(buffer); - free(buffer); + api.free_group_element(shared_value); network_connections.at(node_id).async_send(ke); network_connections.at(node_id).async_receive([node_id, this](cmix_proto::CMixMessage message) { diff --git a/client/cmixclient.hpp b/client/cmixclient.hpp index 2df754b..f1c726d 100644 --- a/client/cmixclient.hpp +++ b/client/cmixclient.hpp @@ -37,7 +37,7 @@ struct NetworkDetails { class CMixClient { struct NodeData { - void* secret_value; + GroupElement secret_value; SharedKey shared_value; }; -- cgit v1.2.3-70-g09d2