<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">--- libraries/libldap/tls_o.c.orig	2020-04-28 09:05:54.000000000 -0500
+++ libraries/libldap/tls_o.c	2020-08-06 18:38:52.000000000 -0500
@@ -50,7 +50,7 @@
 #include &lt;ssl.h&gt;
 #endif
 
-#if OPENSSL_VERSION_NUMBER &gt;= 0x10100000
+#if OPENSSL_VERSION_NUMBER &gt;= 0x10100000 || (defined(LIBRESSL_VERSION_NUMBER) &amp;&amp; LIBRESSL_VERSION_NUMBER &gt;= 0x2070000)
 #define ASN1_STRING_data(x)	ASN1_STRING_get0_data(x)
 #endif
 
@@ -127,7 +127,7 @@
 #endif
 #endif /* OpenSSL 1.1 */
 
-#if OPENSSL_VERSION_NUMBER &lt; 0x10100000
+#if OPENSSL_VERSION_NUMBER &lt; 0x10100000 || (defined(LIBRESSL_VERSION_NUMBER) &amp;&amp; LIBRESSL_VERSION_NUMBER &lt; 0x2070000)
 /*
  * OpenSSL 1.1 API and later makes the BIO method concrete types internal.
  */
@@ -208,7 +208,7 @@
 	(void) tlso_seed_PRNG( lo-&gt;ldo_tls_randfile );
 #endif
 
-#if OPENSSL_VERSION_NUMBER &lt; 0x10100000
+#if (OPENSSL_VERSION_NUMBER &lt; 0x10100000) || (defined(LIBRESSL_VERSION_NUMBER) &amp;&amp; LIBRESSL_VERSION_NUMBER &lt; 0x2070000)
 	SSL_load_error_strings();
 	SSL_library_init();
 	OpenSSL_add_all_digests();
@@ -260,7 +260,7 @@
 tlso_ctx_ref( tls_ctx *ctx )
 {
 	tlso_ctx *c = (tlso_ctx *)ctx;
-#if OPENSSL_VERSION_NUMBER &lt; 0x10100000
+#if (OPENSSL_VERSION_NUMBER &lt; 0x10100000) || (defined(LIBRESSL_VERSION_NUMBER) &amp;&amp; LIBRESSL_VERSION_NUMBER &lt; 0x2070000)
 #define	SSL_CTX_up_ref(ctx)	CRYPTO_add( &amp;(ctx-&gt;references), 1, CRYPTO_LOCK_SSL_CTX )
 #endif
 	SSL_CTX_up_ref( c );
@@ -559,7 +559,7 @@
 	if (!x) return LDAP_INVALID_CREDENTIALS;
 	
 	xn = X509_get_subject_name(x);
-#if OPENSSL_VERSION_NUMBER &lt; 0x10100000
+#if (OPENSSL_VERSION_NUMBER &lt; 0x10100000) || (defined(LIBRESSL_VERSION_NUMBER) &amp;&amp; LIBRESSL_VERSION_NUMBER &lt; 0x2070000)
 	der_dn-&gt;bv_len = i2d_X509_NAME( xn, NULL );
 	der_dn-&gt;bv_val = xn-&gt;bytes-&gt;data;
 #else
@@ -595,7 +595,7 @@
 		return LDAP_INVALID_CREDENTIALS;
 
 	xn = X509_get_subject_name(x);
-#if OPENSSL_VERSION_NUMBER &lt; 0x10100000
+#if (OPENSSL_VERSION_NUMBER &lt; 0x10100000) || (defined(LIBRESSL_VERSION_NUMBER) &amp;&amp; LIBRESSL_VERSION_NUMBER &lt; 0x2070000)
 	der_dn-&gt;bv_len = i2d_X509_NAME( xn, NULL );
 	der_dn-&gt;bv_val = xn-&gt;bytes-&gt;data;
 #else
@@ -855,7 +855,7 @@
 	Sockbuf_IO_Desc		*sbiod;
 };
 
-#if OPENSSL_VERSION_NUMBER &lt; 0x10100000
+#if (OPENSSL_VERSION_NUMBER &lt; 0x10100000) || (defined(LIBRESSL_VERSION_NUMBER) &amp;&amp; LIBRESSL_VERSION_NUMBER &lt; 0x2070000)
 #define BIO_set_init(b, x)	b-&gt;init = x
 #define BIO_set_data(b, x)	b-&gt;ptr = x
 #define BIO_clear_flags(b, x)	b-&gt;flags &amp;= ~(x)
</pre></body></html>