fix #3329
authorChristian Grothoff <christian@grothoff.org>
Thu, 14 Feb 2019 10:03:56 +0000 (11:03 +0100)
committerChristian Grothoff <christian@grothoff.org>
Thu, 14 Feb 2019 10:03:56 +0000 (11:03 +0100)
src/secretsharing/gnunet-service-secretsharing.c
src/secretsharing/secretsharing.conf.in

index 011e79b277cb4627fb5850b5bab7d782b514f2da..842d714f30374a9c7558766147415cf46d9e4e8a 100644 (file)
@@ -898,7 +898,9 @@ restore_fair (const struct GNUNET_CRYPTO_PaillierPublicKey *ppub,
   GNUNET_assert (NULL != (big_b = gcry_mpi_new (0)));
 
   // a = (N,0)^T
-  GNUNET_CRYPTO_mpi_scan_unsigned (&a_1, ppub, sizeof (struct GNUNET_CRYPTO_PaillierPublicKey));
+  GNUNET_CRYPTO_mpi_scan_unsigned (&a_1,
+                                   ppub,
+                                   sizeof (struct GNUNET_CRYPTO_PaillierPublicKey));
   GNUNET_assert (NULL != (a_2 = gcry_mpi_new (0)));
   gcry_mpi_set_ui (a_2, 0);
   // b = (x,1)^T
@@ -960,11 +962,14 @@ restore_fair (const struct GNUNET_CRYPTO_PaillierPublicKey *ppub,
   {
     gcry_mpi_t paillier_n;
 
-    GNUNET_CRYPTO_mpi_scan_unsigned (&paillier_n, ppub, sizeof (struct GNUNET_CRYPTO_PaillierPublicKey));
-
+    GNUNET_CRYPTO_mpi_scan_unsigned (&paillier_n,
+                                     ppub,
+                                     sizeof (struct GNUNET_CRYPTO_PaillierPublicKey));
+    /* FIXME: why get pallier_n here if we never use it? */
     gcry_mpi_set (xres, b_2);
     gcry_mpi_invm (xres, xres, elgamal_q);
     gcry_mpi_mulm (xres, xres, b_1, elgamal_q);
+    gcry_mpi_release (paillier_n);
   }
 
   gcry_mpi_release (a_1);
index ddc41b978bd6e9773235e49919393f16c0809e89..df8566abdb0bcb7920d9745736af7cc151ffe696 100644 (file)
@@ -8,7 +8,7 @@ ACCEPT_FROM6 = ::1;
 UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-secretsharing.sock
 UNIX_MATCH_UID = YES
 UNIX_MATCH_GID = YES
-PREFIX = valgrind --leak-check=yes
+PREFIX = valgrind --leak-check=yes
 # DISABLE_SOCKET_FORWARDING = NO
 # USERNAME =
 # MAXBUF =