aboutsummaryrefslogtreecommitdiff
path: root/libcmix/cmix.h
diff options
context:
space:
mode:
authorDennis Brentjes <d.brentjes@gmail.com>2016-11-27 10:08:19 +0100
committerDennis Brentjes <d.brentjes@gmail.com>2016-11-27 10:08:19 +0100
commit74cea534fd189a2db423ae60997447e66265922b (patch)
treedecc06fa5da1f3f42612d527462d22ee487bf2db /libcmix/cmix.h
parentfa7a48172a3c9d9c2f96d6f9c05d80f497bc304d (diff)
downloadcmix-74cea534fd189a2db423ae60997447e66265922b.tar.gz
cmix-74cea534fd189a2db423ae60997447e66265922b.tar.bz2
cmix-74cea534fd189a2db423ae60997447e66265922b.zip
Implements message delivery.
Adds a minimum number of messages per mix. Embeds the destination in the message. Clients now send messages to themselves.
Diffstat (limited to 'libcmix/cmix.h')
-rw-r--r--libcmix/cmix.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/libcmix/cmix.h b/libcmix/cmix.h
index 8e6f598..c3eeb3a 100644
--- a/libcmix/cmix.h
+++ b/libcmix/cmix.h
@@ -69,7 +69,9 @@ enum cmix_error get_public_key(struct CMixContext const* ctx, char* buffer);
enum cmix_error add_public_share(struct CMixContext const* ctx, char* buffer, char const* share);
-enum cmix_error get_pub_key_hash(struct CMixContext const* ctx, char** buffer);
+enum cmix_error get_pub_key_hash(struct CMixContext const* ctx, char** buffer, size_t* len);
+
+size_t get_pub_key_hash_length(struct CMixContext const* ctx);
enum cmix_error start_mix(struct CMixContext* ctx, size_t nr_participants);
@@ -111,6 +113,10 @@ enum cmix_error swap_k_for_r(struct CMixContext const* ctx, char** out_buffer, c
enum cmix_error remove_r_and_s(struct CMixContext const* ctx, char* out_buffer, char const* message, size_t index);
+enum cmix_error create_message(struct CMixContext const* ctx, char* out_buffer, char const* dest, size_t dest_len, char const* payload, size_t payload_len);
+
+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);
+
#ifdef __cplusplus
} // extern "C"
#endif