aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDennis Brentjes <d.brentjes@gmail.com>2016-12-01 14:34:50 +0100
committerDennis Brentjes <d.brentjes@gmail.com>2016-12-01 14:35:38 +0100
commit95283582a0392633974d1f3f67d5510a16eb104c (patch)
tree320bc379a4e55c48eb7feaff81d431b0dbb4ab76
parent3266b28889060795abfe659f84fa4bc398af9647 (diff)
downloadcmix-95283582a0392633974d1f3f67d5510a16eb104c.tar.gz
cmix-95283582a0392633974d1f3f67d5510a16eb104c.tar.bz2
cmix-95283582a0392633974d1f3f67d5510a16eb104c.zip
Added return statements to function not returning void.
This would crash if we would actually be using the results.
-rw-r--r--libcmix/cmix.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/libcmix/cmix.c b/libcmix/cmix.c
index f8a40b6..0255f42 100644
--- a/libcmix/cmix.c
+++ b/libcmix/cmix.c
@@ -93,6 +93,8 @@ enum cmix_error add_public_share(struct CMixContext const* ctx, char* buffer, ch
element_to_buffer(ctx, buffer, el);
ctx->api.free_group_element(el);
+
+ return no_error;
}
enum cmix_error start_mix(struct CMixContext* ctx, size_t nr_participants) {
@@ -321,6 +323,9 @@ enum cmix_error blind_message(struct CMixContext const* ctx, char* m_out, char c
size_t len = get_group_element_array_size(ctx);
GroupElement* intermediates = (GroupElement*) calloc(nr_nodes + 1, sizeof(GroupElement));
+ if(intermediates == NULL) {
+ return out_of_memory;
+ }
intermediates[0] = ctx->api.array_to_element(message, len, true);
@@ -371,6 +376,8 @@ enum cmix_error remove_r_and_s(struct CMixContext const* ctx, char* out_buffer,
ctx->api.free_group_element(mes);
ctx->api.free_group_element(inv_pirs);
ctx->api.free_group_element(mult);
+
+ return no_error;
}
enum cmix_error get_pub_key_hash(struct CMixContext const* ctx, char** buffer, size_t* len) {
@@ -393,6 +400,8 @@ enum cmix_error create_message(struct CMixContext const* ctx, char* out_buffer,
size_t message_limit = el_arr_len - 1 -dest_len;
memcpy(&out_buffer[1] + dest_len, payload, (message_limit < payload_len ? message_limit : payload_len));
+
+ return no_error;
}
enum cmix_error split_message(struct CMixContext const* ctx, char** dest_buffer, size_t* dest_len, char** payload_buffer, size_t* payload_len, char const* message)
@@ -401,10 +410,18 @@ enum cmix_error split_message(struct CMixContext const* ctx, char** dest_buffer,
*dest_len = get_pub_key_hash_length(ctx);
*dest_buffer = (char*) calloc(*dest_len, sizeof(char));
+ if(*dest_buffer == NULL) {
+ return out_of_memory;
+ }
memcpy(*dest_buffer, &message[1], *dest_len);
*payload_len = el_arr_len - 1 - *dest_len;
*payload_buffer = (char*) calloc(*payload_len, sizeof(char));
+ if(*payload_buffer == NULL) {
+ return out_of_memory;
+ }
memcpy(*payload_buffer, &message[1 + *dest_len], *payload_len);
+
+ return no_error;
}