--- a/Modules/_hashopenssl.c.orig
+++ b/Modules/_hashopenssl.c
@@ -44,7 +44,9 @@
 
 #define MUNCH_SIZE INT_MAX
 
+#ifdef NID_id_scrypt
 #define PY_OPENSSL_HAS_SCRYPT 1
+#endif
 #if defined(NID_sha3_224) && defined(NID_sha3_256) && defined(NID_sha3_384) && defined(NID_sha3_512)
 #define PY_OPENSSL_HAS_SHA3 1
 #endif
@@ -922,11 +924,15 @@ py_evp_fromname(PyObject *module, const char *digestname, PyObject *data_obj,
         goto exit;
     }
 
+#ifndef EVP_MD_FLAG_XOF
+    type = get_hashlib_state(module)->EVPtype;
+#else
     if ((EVP_MD_flags(digest) & EVP_MD_FLAG_XOF) == EVP_MD_FLAG_XOF) {
         type = get_hashlib_state(module)->EVPXOFtype;
     } else {
         type = get_hashlib_state(module)->EVPtype;
     }
+#endif
 
     self = newEVPobject(type);
     if (self == NULL) {
