From 7079843bc849b7acfcf1294cd597bb304756ce2b Mon Sep 17 00:00:00 2001 From: Harald Alvestrand Date: Thu, 1 Aug 2024 13:20:06 +0000 Subject: [PATCH] Fix some gratuitous compile failures under OpenSSL To test: - ensure openssl files live in /usr/include/openssl - make a config with the following values: ``` rtc_build_ssl = false rtc_ssl_root = "/usr/include/openssl ``` - compile rtc_unittests There will be link errors, but no compile errors. Bug: None Change-Id: I3d28b1613e11a716b11c7def808100ef58ab75f5 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/358300 Reviewed-by: Florent Castelli Commit-Queue: Harald Alvestrand Cr-Commit-Position: refs/heads/main@{#42714} --- rtc_base/openssl_session_cache_unittest.cc | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/rtc_base/openssl_session_cache_unittest.cc b/rtc_base/openssl_session_cache_unittest.cc index 0441d5c012..784cde22b2 100644 --- a/rtc_base/openssl_session_cache_unittest.cc +++ b/rtc_base/openssl_session_cache_unittest.cc @@ -35,6 +35,15 @@ SSL_CTX* NewTlsContext() { return SSL_CTX_new(TLS_method()); #endif } + +SSL_SESSION* NewSslSession(SSL_CTX* ssl_ctx) { +#ifdef OPENSSL_IS_BORINGSSL + return SSL_SESSION_new(ssl_ctx); +#else + return SSL_SESSION_new(); +#endif +} + } // namespace namespace rtc { @@ -79,7 +88,7 @@ TEST(OpenSSLSessionCache, InvalidLookupReturnsNullptr) { TEST(OpenSSLSessionCache, SimpleValidSessionLookup) { SSL_CTX* ssl_ctx = NewDtlsContext(); - SSL_SESSION* ssl_session = SSL_SESSION_new(ssl_ctx); + SSL_SESSION* ssl_session = NewSslSession(ssl_ctx); OpenSSLSessionCache session_cache(SSL_MODE_DTLS, ssl_ctx); session_cache.AddSession("webrtc.org", ssl_session); @@ -90,8 +99,8 @@ TEST(OpenSSLSessionCache, SimpleValidSessionLookup) { TEST(OpenSSLSessionCache, AddToExistingReplacesPrevious) { SSL_CTX* ssl_ctx = NewDtlsContext(); - SSL_SESSION* ssl_session_1 = SSL_SESSION_new(ssl_ctx); - SSL_SESSION* ssl_session_2 = SSL_SESSION_new(ssl_ctx); + SSL_SESSION* ssl_session_1 = NewSslSession(ssl_ctx); + SSL_SESSION* ssl_session_2 = NewSslSession(ssl_ctx); OpenSSLSessionCache session_cache(SSL_MODE_DTLS, ssl_ctx); session_cache.AddSession("webrtc.org", ssl_session_1);