diff options
author | Christian Grothoff <christian@grothoff.org> | 2014-12-11 21:55:36 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2014-12-11 21:55:36 +0000 |
commit | addd20663f6f7ccdd666af0bc07b41c384e956a2 (patch) | |
tree | 699b69ec8adde0972ef57b3e7b6737b7ee66ad92 /src/scalarproduct/gnunet-service-scalarproduct_alice.c | |
parent | dcc098d1fdefcb74bed0a6ff6f81347500367ab6 (diff) | |
download | gnunet-addd20663f6f7ccdd666af0bc07b41c384e956a2.tar.gz gnunet-addd20663f6f7ccdd666af0bc07b41c384e956a2.zip |
-fix bugs
Diffstat (limited to 'src/scalarproduct/gnunet-service-scalarproduct_alice.c')
-rw-r--r-- | src/scalarproduct/gnunet-service-scalarproduct_alice.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/scalarproduct/gnunet-service-scalarproduct_alice.c b/src/scalarproduct/gnunet-service-scalarproduct_alice.c index be5ae1e13..3642ff09c 100644 --- a/src/scalarproduct/gnunet-service-scalarproduct_alice.c +++ b/src/scalarproduct/gnunet-service-scalarproduct_alice.c | |||
@@ -861,7 +861,7 @@ element_cmp (const void *a, | |||
861 | * Maximum number of elements we can put into a single cryptodata | 861 | * Maximum number of elements we can put into a single cryptodata |
862 | * message | 862 | * message |
863 | */ | 863 | */ |
864 | #define ELEMENT_CAPACITY ((GNUNET_CONSTANTS_MAX_CADET_MESSAGE_SIZE - sizeof (struct AliceCryptodataMessage)) / sizeof (struct GNUNET_CRYPTO_PaillierCiphertext)) | 864 | #define ELEMENT_CAPACITY ((GNUNET_CONSTANTS_MAX_CADET_MESSAGE_SIZE - 1 - sizeof (struct AliceCryptodataMessage)) / sizeof (struct GNUNET_CRYPTO_PaillierCiphertext)) |
865 | 865 | ||
866 | 866 | ||
867 | /** | 867 | /** |
@@ -911,15 +911,16 @@ send_alices_cryptodata_message (struct AliceServiceSession *s) | |||
911 | msg->contained_element_count = htonl (todo_count); | 911 | msg->contained_element_count = htonl (todo_count); |
912 | payload = (struct GNUNET_CRYPTO_PaillierCiphertext *) &msg[1]; | 912 | payload = (struct GNUNET_CRYPTO_PaillierCiphertext *) &msg[1]; |
913 | a = gcry_mpi_new (0); | 913 | a = gcry_mpi_new (0); |
914 | for (i = off; i < todo_count; i++) | 914 | for (i = off; i < off + todo_count; i++) |
915 | { | 915 | { |
916 | gcry_mpi_add (a, | 916 | gcry_mpi_add (a, |
917 | s->sorted_elements[i].value, | 917 | s->sorted_elements[i].value, |
918 | my_offset); | 918 | my_offset); |
919 | GNUNET_CRYPTO_paillier_encrypt (&my_pubkey, | 919 | GNUNET_assert (3 == |
920 | a, | 920 | GNUNET_CRYPTO_paillier_encrypt (&my_pubkey, |
921 | 3, | 921 | a, |
922 | &payload[i - off]); | 922 | 3, |
923 | &payload[i - off])); | ||
923 | } | 924 | } |
924 | gcry_mpi_release (a); | 925 | gcry_mpi_release (a); |
925 | off += todo_count; | 926 | off += todo_count; |
@@ -1321,6 +1322,7 @@ shutdown_task (void *cls, | |||
1321 | { | 1322 | { |
1322 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 1323 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
1323 | "Shutting down, initiating cleanup.\n"); | 1324 | "Shutting down, initiating cleanup.\n"); |
1325 | // FIXME: we have to cut our connections to CADET first! | ||
1324 | if (NULL != my_cadet) | 1326 | if (NULL != my_cadet) |
1325 | { | 1327 | { |
1326 | GNUNET_CADET_disconnect (my_cadet); | 1328 | GNUNET_CADET_disconnect (my_cadet); |