--- libp11-0.4.10/src/p11_rsa.c	2019-04-03 15:58:18.000000000 -0400
+++ libp11-0.4.10/src/p11_rsa.c	2019-09-30 12:59:51.210016636 -0400
@@ -430,7 +430,7 @@
 
 #endif
 
-#if OPENSSL_VERSION_NUMBER < 0x10100005L || defined(LIBRESSL_VERSION_NUMBER)
+#if OPENSSL_VERSION_NUMBER < 0x10100005L || ( defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x3000000L )
 
 static int RSA_meth_set_flags(RSA_METHOD *meth, int flags)
 {
--- libp11-0.4.10/src/p11_pkey.c	2018-11-24 03:53:48.000000000 -0500
+++ libp11-0.4.10/src/p11_pkey.c	2019-10-03 21:21:54.406907656 -0400
@@ -90,6 +90,9 @@
 	unsigned char *tbuf;
 } RSA_PKEY_CTX;
 
+#endif
+
+#if OPENSSL_VERSION_NUMBER < 0x10002000L || ( defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x3000100L )
 static int EVP_PKEY_CTX_get_signature_md(EVP_PKEY_CTX *ctx, const EVP_MD **pmd)
 {
 	RSA_PKEY_CTX *rctx = EVP_PKEY_CTX_get_data(ctx);
@@ -99,6 +102,10 @@
 	return 1;
 }
 
+#endif
+
+#if OPENSSL_VERSION_NUMBER < 0x10002000L || defined(LIBRESSL_VERSION_NUMBER)
+
 static int EVP_PKEY_CTX_get_rsa_oaep_md(EVP_PKEY_CTX *ctx, const EVP_MD **pmd)
 {
 	RSA_PKEY_CTX *rctx = EVP_PKEY_CTX_get_data(ctx);