Fix Multiple SSL clocks issue when running PeerConnectionIntegrationTestWithFakeClock. This is needed because reference deletion of DtlsTransport and OpenSSLStreamAdapter is queued asynchronously on the network_thread. # Fatal error in: ../../rtc_base/openssl_stream_adapter.cc, line 1121 # last system error: 0 # Check failed: g_clock_for_testing == clock # Multiple SSL clocks for testing is not implemented*** SIGABRT received at time=1781709018 on cpu 4 *** https://ci.chromium.org/ui/tests/p/webrtc/clusters?interval=24h&selectedMetrics=human-cls-failed-presubmit%2Ccritical-failures-exonerated%2Cfailures&orderBy=critical-failures-exonerated&orderDir=desc&q=PeerConnectionIntegrationTestWithFakeClock Bug: None Change-Id: Ie1068ddd338fbfb33883761fa19d0495162eddff Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/483460 Reviewed-by: Danil Chapovalov <danilchap@webrtc.org> Commit-Queue: Jeremy Leconte <jleconte@google.com> Cr-Commit-Position: refs/heads/main@{#48038}
diff --git a/rtc_base/openssl_stream_adapter.cc b/rtc_base/openssl_stream_adapter.cc index 608fe8d..c47fb04 100644 --- a/rtc_base/openssl_stream_adapter.cc +++ b/rtc_base/openssl_stream_adapter.cc
@@ -1103,6 +1103,9 @@ SSL_CTX_free(ssl_ctx_); ssl_ctx_ = nullptr; } +#ifdef OPENSSL_IS_BORINGSSL + clock_for_testing_.reset(); +#endif identity_.reset(); peer_cert_chain_.reset();