aboutsummaryrefslogtreecommitdiff
path: root/lib/sslgen.c
diff options
context:
space:
mode:
authorYang Tse <yangsita@gmail.com>2011-11-04 13:08:37 +0100
committerYang Tse <yangsita@gmail.com>2011-11-04 13:08:37 +0100
commit73029dca5aacef7083a41e61c9e0842c012c452c (patch)
tree2e22e15b66be04d348d7cf91a7f6c6ee4e105228 /lib/sslgen.c
parent5b57c544161987e7deb651110fff4f34a8b0c1ca (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