diff mbox series

[v2] Fix building against OpenSSL 3

Message ID CAJ2ouawKOTezrz7hM_F4qENUUpUiFqrGMUTXPU0y0kdmX3ogMQ@mail.gmail.com
State Changes Requested
Headers show
Series [v2] Fix building against OpenSSL 3 | expand

Commit Message

Jouke Witteveen Dec. 30, 2023, noon UTC
Smartcart support uses the ENGINE API of OpenSSL, which has been
deprecated as of OpenSSL 3. Rather than migrating the code to the new API
or pretending that we do not support OpenSSL 3, accept that we use
deprecated functionality.
---
The `#pragma GCC diagnostic` alternative proposed by Benjamin Berg would
require a push at the beginning of the file and a pop at the end.
 src/crypto/tls_openssl.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

Comments

Jouni Malinen Jan. 14, 2024, 3:58 p.m. UTC | #1
On Sat, Dec 30, 2023 at 01:00:08PM +0100, Jouke Witteveen wrote:
> Smartcart support uses the ENGINE API of OpenSSL, which has been
> deprecated as of OpenSSL 3. Rather than migrating the code to the new API
> or pretending that we do not support OpenSSL 3, accept that we use
> deprecated functionality.
> ---

This feels reasonable to me, but could you please send it with the
Signed-off-by: line added to the end of the commit message as described
in the top level CONTRIBUTIONS file?
diff mbox series

Patch

diff --git a/src/crypto/tls_openssl.c b/src/crypto/tls_openssl.c
index 5aff0d161..17283f998 100644
--- a/src/crypto/tls_openssl.c
+++ b/src/crypto/tls_openssl.c
@@ -19,14 +19,16 @@ 
 #endif
 #endif

+#ifndef OPENSSL_NO_ENGINE
+/* OpenSSL 3.0 has moved away from the engine API */
+#define OPENSSL_SUPPRESS_DEPRECATED
+#include <openssl/engine.h>
+#endif /* OPENSSL_NO_ENGINE */
 #include <openssl/ssl.h>
 #include <openssl/err.h>
 #include <openssl/opensslv.h>
 #include <openssl/pkcs12.h>
 #include <openssl/x509v3.h>
-#ifndef OPENSSL_NO_ENGINE
-#include <openssl/engine.h>
-#endif /* OPENSSL_NO_ENGINE */
 #if OPENSSL_VERSION_NUMBER >= 0x30000000L
 #include <openssl/core_names.h>
 #include <openssl/decoder.h>