From: Russell Webb <russell.w...@intel.com> Several tests were not properly cleaning up everything on process exit, which prevented 'make test' from succeeding when running with address sanitizer enabled. Fix the tests to properly free all resources.
Note that this was found with gcc version 6.0 and was not observed using gcc 4.9.2. Signed-off-by: Russell Webb <russell.w...@intel.com> --- test/bntest.c | 1 + test/hmactest.c | 3 +++ test/srptest.c | 1 + 3 files changed, 5 insertions(+) diff --git a/test/bntest.c b/test/bntest.c index 1ce6db1..891db62 100644 --- a/test/bntest.c +++ b/test/bntest.c @@ -1100,6 +1100,7 @@ int test_mod_exp_mont5(BIO *bp, BN_CTX *ctx) fprintf(stderr, "Modular exponentiation test failed!\n"); return 0; } + BN_MONT_CTX_free(mont); BN_free(a); BN_free(p); BN_free(m); diff --git a/test/hmactest.c b/test/hmactest.c index 13344d6..3b01598 100644 --- a/test/hmactest.c +++ b/test/hmactest.c @@ -188,6 +188,7 @@ int main(int argc, char *argv[]) } printf("test 4 ok\n"); test5: + HMAC_CTX_cleanup(&ctx); HMAC_CTX_init(&ctx); if (HMAC_Init_ex(&ctx, test[4].key, test[4].key_len, NULL, NULL)) { printf("Should fail to initialise HMAC with empty MD (test 5)\n"); @@ -272,6 +273,7 @@ test5: printf("test 5 ok\n"); } test6: + HMAC_CTX_cleanup(&ctx); HMAC_CTX_init(&ctx); if (!HMAC_Init_ex(&ctx, test[7].key, test[7].key_len, EVP_sha1(), NULL)) { printf("Failed to initialise HMAC (test 6)\n"); @@ -302,6 +304,7 @@ test6: printf("test 6 ok\n"); } end: + HMAC_CTX_cleanup(&ctx); EXIT(err); } diff --git a/test/srptest.c b/test/srptest.c index 1d463cd..8075218 100644 --- a/test/srptest.c +++ b/test/srptest.c @@ -148,6 +148,7 @@ int main(int argc, char **argv) ERR_remove_thread_state(NULL); ERR_free_strings(); CRYPTO_mem_leaks(bio_err); + BIO_free(bio_err); return 0; } -- 2.1.0 _______________________________________________ openssl-dev mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev