summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtes <ludo@chbouib.org>2007-06-26 00:52:18 +0200
committerSimon Josefsson <simon@josefsson.org>2007-06-26 09:48:46 +0200
commit03d996092fca971b581403b79e20de3c90290680 (patch)
treef46765e5b13f28302851b36e901444e94dd75ba6
parentb18d378844d548d3c45aef663d1946b33913df9e (diff)
downloadgnutls-03d996092fca971b581403b79e20de3c90290680.tar.gz
Fixed memory leak in `_gnutls_dsa_verify ()'.
* lib/gnutls_pk.c (_gnutls_dsa_verify): Release `rs[0]' and `rs[1]' when done. Signed-off-by: Simon Josefsson <simon@josefsson.org>
-rw-r--r--lib/gnutls_pk.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/gnutls_pk.c b/lib/gnutls_pk.c
index c1c3902608..528255b90d 100644
--- a/lib/gnutls_pk.c
+++ b/lib/gnutls_pk.c
@@ -553,12 +553,16 @@ _gnutls_dsa_verify (const gnutls_datum_t * vdata,
if (_gnutls_mpi_scan_nz (&mdata, vdata->data, &k) != 0)
{
gnutls_assert ();
+ _gnutls_mpi_release (&rs[0]);
+ _gnutls_mpi_release (&rs[1]);
return GNUTLS_E_MPI_SCAN_FAILED;
}
/* decrypt signature */
ret = _gnutls_pk_verify (GCRY_PK_DSA, mdata, rs, params, params_len);
_gnutls_mpi_release (&mdata);
+ _gnutls_mpi_release (&rs[0]);
+ _gnutls_mpi_release (&rs[1]);
if (ret < 0)
{