SSL_CTX_set_ecdh_auto() is not defined when OpenSSL 1.1.1 is compiled
with the no-deprecated option. Remove existing, incomplete guards and
add a compatibility macro in openssl-compat.h, just as OpenSSL does:
https://github.com/openssl/openssl/blob/
bf4006a6f9be691ba6eef0e8629e63369a033ccf/include/openssl/ssl.h#L1486
This should be backported as far as 2.0 and probably even 1.9.
#define BIO_meth_set_destroy(m, f) do { (m)->destroy = (f); } while (0)
#endif
+#ifndef SSL_CTX_set_ecdh_auto
+#define SSL_CTX_set_ecdh_auto(dummy, onoff) ((onoff) != 0)
+#endif
+
#endif /* USE_OPENSSL */
#endif /* _COMMON_OPENSSL_COMPAT_H */
err && *err ? *err : "", curproxy->id, conf_curves, bind_conf->arg, bind_conf->file, bind_conf->line);
cfgerr |= ERR_ALERT | ERR_FATAL;
}
-#if defined(SSL_CTX_set_ecdh_auto)
(void)SSL_CTX_set_ecdh_auto(ctx, 1);
-#endif
}
#endif
#if defined(SSL_CTX_set_tmp_ecdh) && !defined(OPENSSL_NO_ECDH)