From 15a4d92d077cc3bb656aee078229e0167dfdb1d6 Mon Sep 17 00:00:00 2001
From: Tim Ruehsen <tim.ruehsen@gmx.de>
Date: Wed, 19 Sep 2012 23:06:24 +0200
Subject: [PATCH] Additional deallocation fixes.

---
 ChangeLog              | 4 ++++
 examples/rsa-encrypt.c | 6 ++++--
 examples/rsa-keygen.c  | 6 ++++++
 3 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 157a4e0d..21469c09 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2012-09-19  Niels Möller  <nisse@lysator.liu.se>
 
+	From Tim Rühsen:
+	* examples/rsa-encrypt.c (main): Added missing mpz_clear.
+	* examples/rsa-keygen.c (main): Added missing deallocation.
+
 	* testsuite/meta-hash-test.c (test_main): Validate
 	NETTLE_MAX_HASH_DIGEST_SIZE.
 
diff --git a/examples/rsa-encrypt.c b/examples/rsa-encrypt.c
index 70d1503d..c0caba32 100644
--- a/examples/rsa-encrypt.c
+++ b/examples/rsa-encrypt.c
@@ -253,11 +253,13 @@ main(int argc, char **argv)
     }
 
   write_bignum(stdout, x);
-  
+
+  mpz_clear (x);
+
   if (!process_file(&ctx,
 		    stdin, stdout))
     return EXIT_FAILURE;
-  
+
   rsa_public_key_clear(&key);
 
   return EXIT_SUCCESS;
diff --git a/examples/rsa-keygen.c b/examples/rsa-keygen.c
index 0ca39b4b..eec7fd5a 100644
--- a/examples/rsa-keygen.c
+++ b/examples/rsa-keygen.c
@@ -160,5 +160,11 @@ main(int argc, char **argv)
       return EXIT_FAILURE;
     }
 
+  nettle_buffer_clear(&priv_buffer);
+  nettle_buffer_clear(&pub_buffer);
+  rsa_public_key_clear(&pub);
+  rsa_private_key_clear(&priv);
+  free (pub_name);
+  
   return EXIT_SUCCESS;
 }
-- 
GitLab