From 91951307d63cd238e2603cc739b765a909f35785 Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Thu, 13 Oct 2016 16:10:21 +0100 Subject: [PATCH] Add memory leak detection to d2i_test Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/1707) (cherry picked from commit 4a4c4bf06d6362f56507c787c61b07655563e962) --- test/d2i_test.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/test/d2i_test.c b/test/d2i_test.c index 8c99087732..8dbb8f14ec 100644 --- a/test/d2i_test.c +++ b/test/d2i_test.c @@ -142,6 +142,7 @@ int main(int argc, char **argv) int result = 0; const char *test_type_name; const char *expected_error_string; + const char *p = getenv("OPENSSL_DEBUG_MEMORY"); size_t i; static ASN1_ITEM_EXP *items[] = { @@ -159,6 +160,10 @@ int main(int argc, char **argv) {"compare", ASN1_COMPARE} }; + if (p != NULL && strcmp(p, "on") == 0) + CRYPTO_set_mem_debug(1); + CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); + if (argc != 4) { fprintf(stderr, "Usage: d2i_test item_name expected_error file.der\n"); @@ -202,5 +207,10 @@ int main(int argc, char **argv) result = run_tests(argv[0]); +#ifndef OPENSSL_NO_CRYPTO_MDEBUG + if (CRYPTO_mem_leaks_fp(stderr) <= 0) + result = 1; +#endif + return result; } -- 2.25.1