--- src/common/ssl.c.orig	2016-10-23 03:40:01.000000000 -0400
+++ src/common/ssl.c	2016-12-30 11:36:06.582192488 -0500
@@ -176,7 +176,7 @@
 		return 1;
 
 	alg = OBJ_obj2nid (algor->algorithm);
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
 	sign_alg = OBJ_obj2nid (peer_cert->sig_alg->algorithm);
 #else
 	sign_alg = X509_get_signature_nid (peer_cert);
@@ -306,7 +306,7 @@
 
 	SSL_set_fd (ssl, sd);
 
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
 	method = ctx->method;
 #else
 	method = SSL_CTX_get_ssl_method (ctx);
--- plugins/fishlim/dh1080.c.orig	2016-10-23 03:40:01.000000000 -0400
+++ plugins/fishlim/dh1080.c	2016-12-30 11:41:45.356343478 -0500
@@ -74,7 +74,7 @@
 
 		BN_set_word (g, 2);
 
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
 		g_dh->p = p;
 		g_dh->g = g;
 #else
@@ -162,7 +162,7 @@
 		return 0;
 	}
 
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
 	dh_pub_key = dh->pub_key;
 	dh_priv_key = dh->priv_key;
 #else
@@ -213,7 +213,7 @@
 
 	  	priv_key_data = dh1080_decode_b64 (priv_key, &priv_key_len);
 		priv_key_num = BN_bin2bn(priv_key_data, priv_key_len, NULL);
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
 		dh->priv_key = priv_key_num;
 #else
 		DH_set0_key (dh, NULL, priv_key_num);
