summaryrefslogtreecommitdiffstats
path: root/src/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/core')
-rw-r--r--src/core/hle/service/ssl/ssl_backend_openssl.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/core/hle/service/ssl/ssl_backend_openssl.cpp b/src/core/hle/service/ssl/ssl_backend_openssl.cpp
index edbf0ad3e..bc797b76b 100644
--- a/src/core/hle/service/ssl/ssl_backend_openssl.cpp
+++ b/src/core/hle/service/ssl/ssl_backend_openssl.cpp
@@ -233,8 +233,10 @@ public:
return 1;
case BIO_CTRL_PUSH:
case BIO_CTRL_POP:
+#ifdef BIO_CTRL_GET_KTLS_SEND
case BIO_CTRL_GET_KTLS_SEND:
case BIO_CTRL_GET_KTLS_RECV:
+#endif
// We don't support these operations, but don't bother logging them
// as they're nothing unusual.
return 0;
@@ -269,7 +271,14 @@ Result CheckOpenSSLErrors() {
const char* func;
const char* data;
int flags;
- while ((rc = ERR_get_error_all(&file, &line, &func, &data, &flags))) {
+#if OPENSSL_VERSION_NUMBER >= 0x30000000L
+ while ((rc = ERR_get_error_all(&file, &line, &func, &data, &flags)))
+#else
+ // Can't get function names from OpenSSL on this version, so use mine:
+ func = __func__;
+ while ((rc = ERR_get_error_line_data(&file, &line, &data, &flags)))
+#endif
+ {
std::string msg;
msg.resize(1024, '\0');
ERR_error_string_n(rc, msg.data(), msg.size());