From 6c87d1ce66d8e93e6c0f16c06116e9179f6158ba Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Mon, 26 Jan 2015 17:56:52 +0100 Subject: sm: Simplify fix ed8383c6 * sm/minip12.c (p12_build): Release PWBUF only at the end. -- Suggested-by: Eygene Ryabinkin Signed-off-by: Werner Koch --- sm/minip12.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/sm/minip12.c b/sm/minip12.c index ca4d2485d..c70de8a4b 100644 --- a/sm/minip12.c +++ b/sm/minip12.c @@ -2421,8 +2421,6 @@ p12_build (gcry_mpi_t *kparms, const void *cert, size_t certlen, log_error ("can't convert passphrase to" " requested charset '%s': %s\n", charset, strerror (errno)); - gcry_free (pwbuf); - pwbuf = NULL; goto failure; } @@ -2436,8 +2434,6 @@ p12_build (gcry_mpi_t *kparms, const void *cert, size_t certlen, log_error ("error converting passphrase to" " requested charset '%s': %s\n", charset, strerror (errno)); - gcry_free (pwbuf); - pwbuf = NULL; jnlib_iconv_close (cd); goto failure; } @@ -2511,6 +2507,8 @@ p12_build (gcry_mpi_t *kparms, const void *cert, size_t certlen, failure: if (pwbuf) { + /* Note that wipememory is not really needed due to the use of + gcry_malloc_secure. */ wipememory (pwbuf, pwbufsize); gcry_free (pwbuf); } -- cgit v1.2.3