libgit2: fix build with LibreSSL 2.7

By using a patch from upstream's master branch.

Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Nicolas Cavallari 2018-06-01 17:42:00 +02:00 committed by Thomas Petazzoni
parent d1e383d365
commit bd30292bd3

View file

@ -0,0 +1,45 @@
From 7490d449b518115a1ae86b01397e95c38e39cff1 Mon Sep 17 00:00:00 2001
From: Bernard Spil <brnrd@FreeBSD.org>
Date: Mon, 2 Apr 2018 20:00:07 +0200
Subject: [PATCH] Fix build with LibreSSL 2.7
LibreSSL 2.7 adds OpenSSL 1.1 API
Signed-off-by: Bernard Spil <brnrd@FreeBSD.org>
Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
---
src/streams/openssl.c | 3 ++-
src/streams/openssl.h | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/streams/openssl.c b/src/streams/openssl.c
index 9cbb2746f..adcb7f14e 100644
--- a/src/streams/openssl.c
+++ b/src/streams/openssl.c
@@ -104,7 +104,8 @@ int git_openssl_stream_global_init(void)
ssl_opts |= SSL_OP_NO_COMPRESSION;
#endif
-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
SSL_load_error_strings();
OpenSSL_add_ssl_algorithms();
#else
diff --git a/src/streams/openssl.h b/src/streams/openssl.h
index 2bbad7c68..44329ec90 100644
--- a/src/streams/openssl.h
+++ b/src/streams/openssl.h
@@ -31,7 +31,8 @@ extern int git_openssl__set_cert_location(const char *file, const char *path);
-# if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+# if OPENSSL_VERSION_NUMBER < 0x10100000L || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
GIT_INLINE(BIO_METHOD*) BIO_meth_new(int type, const char *name)
{
--
2.17.0