OpenSSL ENGINE API was deprecated in 3.0 and the header is removed
in newer versions. In dkim.c it was unused; in ssl_util.c we now
conditionally include it only for OpenSSL versions that need it.
#include <openssl/err.h>
#include <openssl/evp.h>
#include <openssl/rsa.h>
-#include <openssl/engine.h>
/* special DNS tokens */
#define DKIM_DNSKEYNAME "_domainkey"
#include <openssl/rand.h>
#include <openssl/conf.h>
#include <openssl/evp.h>
-#include <openssl/engine.h>
#include <openssl/x509v3.h>
+/* ENGINE API is deprecated in OpenSSL 3.0 and removed in later versions */
+#if OPENSSL_VERSION_NUMBER >= 0x1000104fL && OPENSSL_VERSION_NUMBER < 0x30000000L && !defined(LIBRESSL_VERSION_NUMBER)
+#include <openssl/engine.h>
+#endif
enum rspamd_ssl_state {
ssl_conn_reset = 0,