kumquat-buildroot/package/libevent/0001-Don-t-define-BIO_get_init-for-LibreSSL-3-5.patch
Fabrice Fontaine e01f3fc602 package/libevent: fix build with libressl >= 3.5.0
Fix the following build failure with libressl raised since bump to
version 3.5.2 in commit 8b216927db:

In file included from bufferevent_openssl.c:68:
bufferevent_openssl.c: In function 'bio_bufferevent_free':
openssl-compat.h:44:28: error: invalid use of incomplete typedef 'BIO' {aka 'struct bio_st'}
   44 | #define BIO_get_init(b) (b)->init
      |                            ^~
bufferevent_openssl.c:124:7: note: in expansion of macro 'BIO_get_init'
  124 |   if (BIO_get_init(b) && BIO_get_data(b))
      |       ^~~~~~~~~~~~

Fixes:
 - http://autobuild.buildroot.org/results/273f9aa354a08ef3af6140b8dec086408bf5d574

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2022-04-27 21:03:32 +02:00

30 lines
1.2 KiB
Diff

From 883630f76cbf512003b81de25cd96cb75c6cf0f9 Mon Sep 17 00:00:00 2001
From: Theo Buehler <tb@openbsd.org>
Date: Sun, 21 Nov 2021 21:38:20 +0100
Subject: [PATCH] Don't define BIO_get_init() for LibreSSL 3.5+
BIO_get_init() is available in LibreSSL 3.5 and later. The BIO type
will become opaque, so the existing macro will break the build.
[Retrieved from:
https://github.com/libevent/libevent/commit/883630f76cbf512003b81de25cd96cb75c6cf0f9]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
openssl-compat.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/openssl-compat.h b/openssl-compat.h
index a23e34251b..f5de25539f 100644
--- a/openssl-compat.h
+++ b/openssl-compat.h
@@ -40,7 +40,8 @@ static inline BIO_METHOD *BIO_meth_new(int type, const char *name)
#endif /* (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
(defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L) */
-#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20700000L
+#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20700000L && \
+ LIBRESSL_VERSION_NUMBER < 0x30500000L
#define BIO_get_init(b) (b)->init
#endif