From EVP_DigestInit(3):
EVP_MD_CTX_create() and EVP_MD_CTX_destroy() were renamed
to EVP_MD_CTX_new() and EVP_MD_CTX_free() in OpenSSL 1.1.
const EVP_MD *md;
+# if (OPENSSL_VERSION_NUMBER < 0x10100000L)
EVP_MD_CTX_Ptr ctx(EVP_MD_CTX_create(), EVP_MD_CTX_destroy);
+# else
+ EVP_MD_CTX_Ptr ctx(EVP_MD_CTX_new(), EVP_MD_CTX_free);
+# endif
uchar_arr ret(new unsigned char[EVP_MAX_MD_SIZE]);
{
const EVP_MD *md;
+# if (OPENSSL_VERSION_NUMBER < 0x10100000L)
EVP_MD_CTX_Ptr ctx(EVP_MD_CTX_create(), EVP_MD_CTX_destroy);
+# else
+ EVP_MD_CTX_Ptr ctx(EVP_MD_CTX_new(), EVP_MD_CTX_free);
+# endif
uchar_arr ret(new unsigned char[EVP_MAX_MD_SIZE]);