If memory debugging enabled return error on leaks.
[openssl.git] / test / jpaketest.c
index ef9e54bdb3c9e3d89e1ebd5bd509c2f8fa67f40d..7b59855d23f9d2e8a3f9bad5c0cac893d2d2508a 100644 (file)
@@ -112,13 +112,14 @@ int main(int argc, char **argv)
     BIGNUM *g = NULL;
     BIGNUM *q = NULL;
     BIGNUM *secret = BN_new();
+#ifndef OPENSSL_NO_CRYPTO_MDEBUG
     BIO *bio_err;
 
-    bio_err = BIO_new_fp(stderr, BIO_NOCLOSE);
+    bio_err = BIO_new_fp(stderr, BIO_NOCLOSE | BIO_FP_TEXT);
 
-    CRYPTO_malloc_debug_init();
-    CRYPTO_dbg_set_options(V_CRYPTO_MDEBUG_ALL);
+    CRYPTO_set_mem_debug(1);
     CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON);
+#endif
 
     ERR_load_crypto_strings();
 
@@ -177,7 +178,10 @@ int main(int argc, char **argv)
     CRYPTO_cleanup_all_ex_data();
     ERR_remove_thread_state(NULL);
     ERR_free_strings();
-    CRYPTO_mem_leaks(bio_err);
+#ifndef OPENSSL_NO_CRYPTO_MDEBUG
+    if (CRYPTO_mem_leaks(bio_err) <= 0)
+        return 1;
+#endif
 
     return 0;
 }