aboutsummaryrefslogtreecommitdiff
path: root/src/util/crypto_abe.c
diff options
context:
space:
mode:
authorSchanzenbach, Martin <mschanzenbach@posteo.de>2017-07-09 20:14:16 +0200
committerSchanzenbach, Martin <mschanzenbach@posteo.de>2017-07-09 20:14:16 +0200
commit811155110e1d22345f13ac6c7c85ebba92226132 (patch)
treefaad9fd111e87b8156fb2b506d9dc4288e56fe22 /src/util/crypto_abe.c
parentaefb30b1912933105b36c60f098a9f3c815549c2 (diff)
downloadgnunet-811155110e1d22345f13ac6c7c85ebba92226132.tar.gz
gnunet-811155110e1d22345f13ac6c7c85ebba92226132.zip
-fixes
Diffstat (limited to 'src/util/crypto_abe.c')
-rw-r--r--src/util/crypto_abe.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/util/crypto_abe.c b/src/util/crypto_abe.c
index 798a74f87..f84aaf9f9 100644
--- a/src/util/crypto_abe.c
+++ b/src/util/crypto_abe.c
@@ -145,7 +145,6 @@ GNUNET_CRYPTO_cpabe_create_master_key (void)
145 key->msk = bswabe_msk_serialize(msk); 145 key->msk = bswabe_msk_serialize(msk);
146 GNUNET_assert (NULL != key->pub); 146 GNUNET_assert (NULL != key->pub);
147 GNUNET_assert (NULL != key->msk); 147 GNUNET_assert (NULL != key->msk);
148 bswabe_pub_free (pub);
149 bswabe_msk_free (msk); 148 bswabe_msk_free (msk);
150 return key; 149 return key;
151} 150}
@@ -174,6 +173,8 @@ GNUNET_CRYPTO_cpabe_create_key (struct GNUNET_CRYPTO_AbeMasterKey *key,
174 prv_key->prv = bswabe_prv_serialize(prv); 173 prv_key->prv = bswabe_prv_serialize(prv);
175 prv_key->pub = bswabe_pub_serialize (pub); 174 prv_key->pub = bswabe_pub_serialize (pub);
176 GNUNET_assert (NULL != prv_key->prv); 175 GNUNET_assert (NULL != prv_key->prv);
176 //Memory management in bswabe is buggy
177 //bswabe_prv_free (prv);
177 bswabe_msk_free (msk); 178 bswabe_msk_free (msk);
178 return prv_key; 179 return prv_key;
179} 180}
@@ -296,6 +297,7 @@ GNUNET_CRYPTO_cpabe_decrypt (const void *block,
296 if( !bswabe_dec(pub, prv, cph, m) ) { 297 if( !bswabe_dec(pub, prv, cph, m) ) {
297 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, 298 GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
298 "%s\n", bswabe_error()); 299 "%s\n", bswabe_error());
300 bswabe_cph_free(cph);
299 return GNUNET_SYSERR; 301 return GNUNET_SYSERR;
300 } 302 }
301 bswabe_cph_free(cph); 303 bswabe_cph_free(cph);
@@ -304,7 +306,8 @@ GNUNET_CRYPTO_cpabe_decrypt (const void *block,
304 g_byte_array_free(aes_buf, 1); 306 g_byte_array_free(aes_buf, 1);
305 *result = GNUNET_malloc (plt->len); 307 *result = GNUNET_malloc (plt->len);
306 GNUNET_memcpy (*result, plt->data, plt->len); 308 GNUNET_memcpy (*result, plt->data, plt->len);
307 bswabe_prv_free (prv); 309 //freeing is buggy in bswabe
310 //bswabe_prv_free (prv);
308 bswabe_pub_free (pub); 311 bswabe_pub_free (pub);
309 return pt_size; 312 return pt_size;
310} 313}