LibVNCClient: properly free the openssl session stuff on shutdown.

pull/1/head
Christian Beier 12 years ago
parent 77286f0831
commit f606179c9c

@ -568,19 +568,20 @@ void FreeTLS(rfbClient* client)
{ {
int i; int i;
if (mutex_buf == NULL) if (mutex_buf != NULL) {
return (0); CRYPTO_set_dynlock_create_callback(NULL);
CRYPTO_set_dynlock_lock_callback(NULL);
CRYPTO_set_dynlock_create_callback(NULL); CRYPTO_set_dynlock_destroy_callback(NULL);
CRYPTO_set_dynlock_lock_callback(NULL);
CRYPTO_set_dynlock_destroy_callback(NULL); CRYPTO_set_locking_callback(NULL);
CRYPTO_set_id_callback(NULL);
CRYPTO_set_locking_callback(NULL);
CRYPTO_set_id_callback(NULL); for (i = 0; i < CRYPTO_num_locks(); i++)
pthread_mutex_destroy(&mutex_buf[i]);
free(mutex_buf);
mutex_buf = NULL;
}
for (i = 0; i < CRYPTO_num_locks(); i++) SSL_free(client->tlsSession);
pthread_mutex_destroy(&mutex_buf[i]);
free(mutex_buf);
mutex_buf = NULL;
} }

Loading…
Cancel
Save