diff mbox series

[meta-networking,2/2] openconnect: Fix build with GnuTLS v3.8.1

Message ID 20230907184326.498115-2-raj.khem@gmail.com
State New
Headers show
Series [meta-networking,1/2] openconnect: Upgrade to 9.12 | expand

Commit Message

Khem Raj Sept. 7, 2023, 6:43 p.m. UTC
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...g-of-GNUTLS_NO_EXTENSIONS-in-GnuTLS-.patch | 43 +++++++++++++++++++
 .../openconnect/openconnect_9.12.bb           |  1 +
 2 files changed, 44 insertions(+)
 create mode 100644 meta-networking/recipes-connectivity/openconnect/openconnect/0001-Shim-for-renaming-of-GNUTLS_NO_EXTENSIONS-in-GnuTLS-.patch
diff mbox series

Patch

diff --git a/meta-networking/recipes-connectivity/openconnect/openconnect/0001-Shim-for-renaming-of-GNUTLS_NO_EXTENSIONS-in-GnuTLS-.patch b/meta-networking/recipes-connectivity/openconnect/openconnect/0001-Shim-for-renaming-of-GNUTLS_NO_EXTENSIONS-in-GnuTLS-.patch
new file mode 100644
index 0000000000..9dd3da75ad
--- /dev/null
+++ b/meta-networking/recipes-connectivity/openconnect/openconnect/0001-Shim-for-renaming-of-GNUTLS_NO_EXTENSIONS-in-GnuTLS-.patch
@@ -0,0 +1,43 @@ 
+From e4ea64134cfe3763332c16dcac52dd894b935880 Mon Sep 17 00:00:00 2001
+From: Daniel Lenski <dlenski@gmail.com>
+Date: Tue, 22 Aug 2023 12:02:19 -0700
+Subject: [PATCH] Shim for renaming of GNUTLS_NO_EXTENSIONS in GnuTLS v3.8.1
+
+The constant `GNUTLS_NO_EXTENSIONS` was renamed in
+https://gitlab.com/gnutls/gnutls/-/commit/a7c4a04e (released in v3.8.1), and
+then a backwards-compatibility shim was belatedly added in
+https://gitlab.com/gnutls/gnutls/-/commit/abfa8634, which has not yet been
+released.
+
+We need to re-add the constant ourselves in order to build correctly with
+GnuTLS v3.8.1.  This should fix
+https://gitlab.com/openconnect/openconnect/-/issues/650.
+
+Upstream-Status: Backport [https://git.infradead.org/users/dwmw2/openconnect.git/commit/7512698217c4104aade7a2df669a20de68f3bb8c]
+Signed-off-by: Daniel Lenski <dlenski@gmail.com>
+---
+ gnutls-dtls.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/gnutls-dtls.c b/gnutls-dtls.c
+index 3fd78e95..50a4bb4e 100644
+--- a/gnutls-dtls.c
++++ b/gnutls-dtls.c
+@@ -39,6 +39,14 @@
+ # define GNUTLS_CIPHER_CHACHA20_POLY1305 23
+ #endif
+ 
++#if GNUTLS_VERSION_NUMBER >= 0x030801 && !defined(GNUTLS_NO_EXTENSIONS)
++/* XX: GNUTLS_NO_EXTENSIONS was renamed in GnuTLS v3.8.1. A
++ * backwards-compatibility shim was added in a subsequent commit, but
++ * not yet released.
++ */
++# define GNUTLS_NO_EXTENSIONS GNUTLS_NO_DEFAULT_EXTENSIONS
++#endif
++
+ /* sets the DTLS MTU and returns the actual tunnel MTU */
+ unsigned dtls_set_mtu(struct openconnect_info *vpninfo, unsigned mtu)
+ {
+-- 
+2.42.0
+
diff --git a/meta-networking/recipes-connectivity/openconnect/openconnect_9.12.bb b/meta-networking/recipes-connectivity/openconnect/openconnect_9.12.bb
index f2650e0eb6..7d0e5f2052 100644
--- a/meta-networking/recipes-connectivity/openconnect/openconnect_9.12.bb
+++ b/meta-networking/recipes-connectivity/openconnect/openconnect_9.12.bb
@@ -4,6 +4,7 @@  LIC_FILES_CHKSUM = "file://COPYING.LGPL;md5=4fbd65380cdd255951079008b364516c"
 
 SRC_URI = " \
     git://git.infradead.org/users/dwmw2/openconnect.git;branch=master \
+    file://0001-Shim-for-renaming-of-GNUTLS_NO_EXTENSIONS-in-GnuTLS-.patch \
 "
 SRCREV = "59f2e59eb3e436364ef82e630e5a2f88f32acd58"