diff options
author | Yang Tse <yangsita@gmail.com> | 2011-11-04 13:08:37 +0100 |
---|---|---|
committer | Yang Tse <yangsita@gmail.com> | 2011-11-04 13:08:37 +0100 |
commit | 73029dca5aacef7083a41e61c9e0842c012c452c (patch) | |
tree | 2e22e15b66be04d348d7cf91a7f6c6ee4e105228 /lib/sslgen.c | |
parent | 5b57c544161987e7deb651110fff4f34a8b0c1ca (diff) |
ssluse.c: fix calling of OpenSSL's ERR_remove_state(0)
Move calling of ERR_remove_state(0) a.k.a ERR_remove_thread_state(NULL)
from Curl_ossl_close_all() to Curl_ossl_cleanup().
In this way ERR_remove_state(0) is now only called in libcurl by
curl_global_cleanup(). Previously it would get called by functions
curl_easy_cleanup(), curl_multi_cleanup and potentially each time a
connection was removed from a connection cache leading to premature
destruction of OpenSSL's thread local state hash.
Multi-threaded apps using OpenSSL enabled libcurl should still call
function ERR_remove_state(0) or ERR_remove_thread_state(NULL) at the
very end end of threads that do not call curl_global_cleanup().
Diffstat (limited to 'lib/sslgen.c')
0 files changed, 0 insertions, 0 deletions