diff options
author | Jeff Burdges <burdges@gnunet.org> | 2016-03-21 14:06:01 +0000 |
---|---|---|
committer | Jeff Burdges <burdges@gnunet.org> | 2016-03-21 14:06:01 +0000 |
commit | d13b8484c6c71061f737085ee56c0d1a6c1dd9a4 (patch) | |
tree | dd474d0076d0d43a6ce107b9828cedf12b64be32 /src/util/crypto_rsa.c | |
parent | 44df35a1926b4ed97e56214f2fffe2b9dce1492b (diff) | |
download | gnunet-d13b8484c6c71061f737085ee56c0d1a6c1dd9a4.tar.gz gnunet-d13b8484c6c71061f737085ee56c0d1a6c1dd9a4.zip |
Release outside of helper function
Diffstat (limited to 'src/util/crypto_rsa.c')
-rw-r--r-- | src/util/crypto_rsa.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/util/crypto_rsa.c b/src/util/crypto_rsa.c index b19634ab8..9fecfb738 100644 --- a/src/util/crypto_rsa.c +++ b/src/util/crypto_rsa.c | |||
@@ -827,7 +827,7 @@ mpi_to_sexp (gcry_mpi_t value) | |||
827 | 827 | ||
828 | 828 | ||
829 | /** | 829 | /** |
830 | * Sign and release the given MPI. | 830 | * Sign the given MPI. |
831 | * | 831 | * |
832 | * @param key private key to use for the signing | 832 | * @param key private key to use for the signing |
833 | * @param value the MPI to sign | 833 | * @param value the MPI to sign |
@@ -843,7 +843,6 @@ rsa_sign_mpi (const struct GNUNET_CRYPTO_RsaPrivateKey *key, | |||
843 | gcry_sexp_t result; | 843 | gcry_sexp_t result; |
844 | 844 | ||
845 | data = mpi_to_sexp (value); | 845 | data = mpi_to_sexp (value); |
846 | gcry_mpi_release (value); | ||
847 | 846 | ||
848 | if (0 != | 847 | if (0 != |
849 | gcry_pk_sign (&result, | 848 | gcry_pk_sign (&result, |
@@ -891,6 +890,7 @@ GNUNET_CRYPTO_rsa_sign_blinded (const struct GNUNET_CRYPTO_RsaPrivateKey *key, | |||
891 | size_t msg_len) | 890 | size_t msg_len) |
892 | { | 891 | { |
893 | gcry_mpi_t v = NULL; | 892 | gcry_mpi_t v = NULL; |
893 | struct GNUNET_CRYPTO_RsaSignature *sig; | ||
894 | 894 | ||
895 | GNUNET_assert (0 == | 895 | GNUNET_assert (0 == |
896 | gcry_mpi_scan (&v, | 896 | gcry_mpi_scan (&v, |
@@ -899,7 +899,9 @@ GNUNET_CRYPTO_rsa_sign_blinded (const struct GNUNET_CRYPTO_RsaPrivateKey *key, | |||
899 | msg_len, | 899 | msg_len, |
900 | NULL)); | 900 | NULL)); |
901 | 901 | ||
902 | return rsa_sign_mpi (key, v); | 902 | sig = rsa_sign_mpi (key, v); |
903 | gcry_mpi_release (value); | ||
904 | return sig; | ||
903 | } | 905 | } |
904 | 906 | ||
905 | 907 | ||
@@ -917,13 +919,17 @@ GNUNET_CRYPTO_rsa_sign_fdh (const struct GNUNET_CRYPTO_RsaPrivateKey *key, | |||
917 | struct GNUNET_CRYPTO_RsaPublicKey *pkey; | 919 | struct GNUNET_CRYPTO_RsaPublicKey *pkey; |
918 | gcry_mpi_t v = NULL; | 920 | gcry_mpi_t v = NULL; |
919 | gcry_error_t rc; | 921 | gcry_error_t rc; |
922 | struct GNUNET_CRYPTO_RsaSignature *sig; | ||
920 | 923 | ||
921 | pkey = GNUNET_CRYPTO_rsa_private_key_get_public (key); | 924 | pkey = GNUNET_CRYPTO_rsa_private_key_get_public (key); |
922 | rc = rsa_full_domain_hash (&v, hash, pkey, NULL); | 925 | rc = rsa_full_domain_hash (&v, hash, pkey, NULL); |
923 | GNUNET_CRYPTO_rsa_public_key_free (pkey); | 926 | GNUNET_CRYPTO_rsa_public_key_free (pkey); |
924 | GNUNET_assert (0 == rc); | 927 | GNUNET_assert (0 == rc); |
925 | 928 | ||
926 | return rsa_sign_mpi (key,v); | 929 | sig = rsa_sign_mpi (key, v); |
930 | gcry_mpi_release (value); | ||
931 | return sig; | ||
932 | |||
927 | } | 933 | } |
928 | 934 | ||
929 | 935 | ||