When the SSL object was destroyed, it would invalidate all SSL_SESSION
objects including the cached, but not yet used, TLS session objects.
Properly disassociate the SSL object from the SSL_SESSION before we
store it in the TLS session cache, so we can later destroy it without
invalidating the cached TLS sessions.
Co-authored-by: Ondřej Surý <ondrej@isc.org>
Co-authored-by: Artem Boldariev <artem@isc.org>
Co-authored-by: Aram Sargsyan <aram@isc.org>
(cherry picked from commit
c11b736e44a5f637eff9babcd65cc2958f52e7ce)
return;
}
+ SSL_set_session(tls, NULL);
+
isc_mutex_lock(&cache->lock);
name_len = strlen(remote_peer_name);