From ae1428fc2830e8ed07587fd99f2bc0e5795cfcea Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Tue, 25 Apr 2017 15:15:27 +0200 Subject: certtool: ensure no leaks on pkcs12_info() error paths Signed-off-by: Nikos Mavrogiannopoulos --- src/certtool.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/certtool.c b/src/certtool.c index faa7cc629e..20ae26c44e 100644 --- a/src/certtool.c +++ b/src/certtool.c @@ -3554,6 +3554,7 @@ void pkcs12_info(common_info_st * cinfo) if (result < 0) { fprintf(stderr, "bag_count: %s\n", gnutls_strerror(result)); + gnutls_pkcs12_bag_deinit(bag); app_exit(1); } @@ -3563,6 +3564,7 @@ void pkcs12_info(common_info_st * cinfo) if (result < 0) { fprintf(stderr, "bag_init: %s\n", gnutls_strerror(result)); + gnutls_pkcs12_bag_deinit(bag); app_exit(1); } @@ -3577,6 +3579,7 @@ void pkcs12_info(common_info_st * cinfo) fail = 1; fprintf(stderr, "bag_decrypt: %s\n", gnutls_strerror(result)); + gnutls_pkcs12_bag_deinit(bag); continue; } @@ -3584,6 +3587,7 @@ void pkcs12_info(common_info_st * cinfo) if (result < 0) { fprintf(stderr, "encrypted bag_count: %s\n", gnutls_strerror(result)); + gnutls_pkcs12_bag_deinit(bag); app_exit(1); } } -- cgit v1.2.1