summaryrefslogtreecommitdiff
path: root/client/client.c
diff options
context:
space:
mode:
Diffstat (limited to 'client/client.c')
-rw-r--r--client/client.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/client/client.c b/client/client.c
index 155d895..c7a2836 100644
--- a/client/client.c
+++ b/client/client.c
@@ -423,7 +423,7 @@ struct data_packet mp_create_packet_from_bytes(
const byte *input,
size_t input_len,
byte recipient_count,
- hash *recipients,
+ recipient *recipients,
keypair author_keys) {
struct data_packet packet;
memset(&packet, 0, sizeof(packet));
@@ -434,7 +434,7 @@ struct data_packet mp_create_packet_from_bytes(
packet.contents.recipient_count
= recipient_count > MAX_RECIPIENTS ? MAX_RECIPIENTS : recipient_count;
if (recipients)
- memcpy(packet.contents.recipients, recipients, packet.contents.recipient_count * 32);
+ memcpy(packet.contents.recipients, recipients, packet.contents.recipient_count * 64);
packet.contents.created_time_ms = get_current_time_ms();
@@ -442,7 +442,6 @@ struct data_packet mp_create_packet_from_bytes(
memcpy(packet.contents.author_signing_pub, author_keys.signing_pub, sizeof(public_key));
packet.contents.encrypted = false;
- // Create signature
size_t msg_len = CONTENTS_SIZE - sizeof(signature);
byte *msg_buf = malloc(msg_len);
if (msg_buf) {
@@ -451,8 +450,8 @@ struct data_packet mp_create_packet_from_bytes(
memcpy(msg_buf + 9, packet.contents.author, 32);
memcpy(msg_buf + 41, packet.contents.author_signing_pub, 32);
msg_buf[ 73 ] = packet.contents.recipient_count;
- memcpy(msg_buf + 74, packet.contents.recipients, 32 * MAX_RECIPIENTS);
- memcpy(msg_buf + 74 + 32 * MAX_RECIPIENTS, packet.contents.data, 65536);
+ memcpy(msg_buf + 74, packet.contents.recipients, 64 * MAX_RECIPIENTS);
+ memcpy(msg_buf + 74 + 64 * MAX_RECIPIENTS, packet.contents.data, 65536);
crypto_sign_detached(
packet.contents.signature, NULL, msg_buf, msg_len, author_keys.signing_priv);
free(msg_buf);
@@ -464,7 +463,7 @@ struct data_packet mp_create_packet_from_bytes(
mp_client_error_t mp_create_packet_from_file(
const char *filename,
byte recipient_count,
- hash *recipients,
+ recipient *recipients,
keypair author_keys,
struct data_packet *out_packet) {
FILE *file = fopen(filename, "rb");
@@ -509,9 +508,9 @@ struct data_packet mp_run_pow(struct data_packet packet, byte leading_zeros) {
memcpy(contents_buffer + 9, packet.contents.author, 32);
memcpy(contents_buffer + 41, packet.contents.author_signing_pub, 32);
contents_buffer[ 73 ] = packet.contents.recipient_count;
- memcpy(contents_buffer + 74, packet.contents.recipients, 32 * MAX_RECIPIENTS);
- memcpy(contents_buffer + 74 + 32 * MAX_RECIPIENTS, packet.contents.data, 65536);
- memcpy(contents_buffer + 74 + 32 * MAX_RECIPIENTS + 65536, packet.contents.signature, 64);
+ memcpy(contents_buffer + 74, packet.contents.recipients, 64 * MAX_RECIPIENTS);
+ memcpy(contents_buffer + 74 + 64 * MAX_RECIPIENTS, packet.contents.data, 65536);
+ memcpy(contents_buffer + 74 + 64 * MAX_RECIPIENTS + 65536, packet.contents.signature, 64);
packet.nonce = 0;
while (true) {