From 144cccecb7abe37d2c96af77ad8e543ec0b8befc Mon Sep 17 00:00:00 2001 From: Max Fillinger Date: Wed, 13 Nov 2024 15:19:03 +0100 Subject: [PATCH] Fix memory leak in example programs Signed-off-by: Max Fillinger --- programs/ssl/ssl_client2.c | 2 ++ programs/ssl/ssl_server2.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/programs/ssl/ssl_client2.c b/programs/ssl/ssl_client2.c index 061096bdf0..9b69b170bc 100644 --- a/programs/ssl/ssl_client2.c +++ b/programs/ssl/ssl_client2.c @@ -2518,6 +2518,7 @@ usage: opt.exp_label, strlen(opt.exp_label), NULL, 0, 0); if (ret != 0) { + mbedtls_free(exported_key); goto exit; } mbedtls_printf("Exporting key of length %d with label \"%s\": 0x", @@ -2528,6 +2529,7 @@ usage: } mbedtls_printf("\n\n"); fflush(stdout); + mbedtls_free(exported_key); } #endif /* defined(MBEDTLS_SSL_KEYING_MATERIAL_EXPORT) */ diff --git a/programs/ssl/ssl_server2.c b/programs/ssl/ssl_server2.c index 5186006886..a0a3a68009 100644 --- a/programs/ssl/ssl_server2.c +++ b/programs/ssl/ssl_server2.c @@ -3638,6 +3638,7 @@ handshake: opt.exp_label, strlen(opt.exp_label), NULL, 0, 0); if (ret != 0) { + mbedtls_free(exported_key); goto exit; } mbedtls_printf("Exporting key of length %d with label \"%s\": 0x", @@ -3648,6 +3649,7 @@ handshake: } mbedtls_printf("\n\n"); fflush(stdout); + mbedtls_free(exported_key); } #endif /* defined(MBEDTLS_SSL_KEYING_MATERIAL_EXPORT) */