Fix memory leak in ssltest
authorMatt Caswell <matt@openssl.org>
Tue, 8 Mar 2016 20:59:50 +0000 (20:59 +0000)
committerMatt Caswell <matt@openssl.org>
Wed, 9 Mar 2016 01:14:57 +0000 (01:14 +0000)
The new Rand usage of Thread API exposed a bug in ssltest. ssltest "cheats"
and uses internal headers to directly call functions that normally you
wouldn't be able to do. This means that auto-init doesn't happen, and
therefore auto-deinit doesn't happen either, meaning that the new rand locks
don't get cleaned up properly.

Reviewed-by: Rich Salz <rsalz@openssl.org>
test/ssltest.c

index 94aeebe9c067de1816a55b4673b10f23562b4c5e..8d9b2c8b1d5801731688c05ead66932d781fd5f1 100644 (file)
@@ -3617,6 +3617,12 @@ static int do_test_cipherlist(void)
     int i = 0;
     const SSL_METHOD *meth;
     const SSL_CIPHER *ci, *tci = NULL;
+
+    /*
+     * This is required because ssltest "cheats" and uses internal headers to
+     * call functions, thus avoiding auto-init
+     */
+    OPENSSL_init_crypto(0, NULL);
 #endif
 
 #ifndef OPENSSL_NO_SSL3