Unverified Commit 37385d91 authored by Leona Maroni's avatar Leona Maroni
Browse files

lasso: fix build with gcc14

parent 5c0c4807
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
diff --git a/lasso/xml/tools.c b/lasso/xml/tools.c
index 385858d174..bbc87d9f1e 100644
--- a/lasso/xml/tools.c
+++ b/lasso/xml/tools.c
@@ -47,6 +47,7 @@
 #include <libxml/xmlIO.h>
 
 #include <openssl/evp.h>
+#include <openssl/pem.h>
 
 #include <xmlsec/base64.h>
 #include <xmlsec/crypto.h>
+53 −0
Original line number Diff line number Diff line
From 1bf9184e1208e805f70ccb8ba06b4c3d63a1a04a Mon Sep 17 00:00:00 2001
From: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date: Wed, 24 Jan 2024 15:15:39 +0100
Subject: [PATCH] misc: adjust to structured error callback argument change in
 libxml2 2.12 (#86080)

---
 lasso/lasso.c     | 8 +++++++-
 lasso/xml/tools.c | 9 ++++++++-
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/lasso/lasso.c b/lasso/lasso.c
index 9902512f..7ea5df44 100644
--- a/lasso/lasso.c
+++ b/lasso/lasso.c
@@ -138,7 +138,13 @@ DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
 #include "types.c"
 
 static void
-lasso_xml_structured_error_func(G_GNUC_UNUSED void *user_data, xmlErrorPtr error)
+lasso_xml_structured_error_func(G_GNUC_UNUSED void *user_data,
+#if LIBXML_VERSION >= 21200
+                                        const xmlError *error
+#else
+                                        xmlErrorPtr error
+#endif
+				)
 {
 	g_log("libxml2", G_LOG_LEVEL_DEBUG, "libxml2: %s", error->message);
 }
diff --git a/lasso/xml/tools.c b/lasso/xml/tools.c
index 385858d1..014f4040 100644
--- a/lasso/xml/tools.c
+++ b/lasso/xml/tools.c
@@ -1449,7 +1449,14 @@ lasso_concat_url_query(const char *url, const char *query)
 	}
 }
 
-static void structuredErrorFunc (void *userData, xmlErrorPtr error) {
+static void structuredErrorFunc (void *userData,
+#if LIBXML_VERSION >= 21200
+                                        const xmlError *error
+#else
+                                        xmlErrorPtr error
+#endif
+				 )
+{
 		*(int*)userData = error->code;
 }
 
-- 
2.49.0
+11 −0
Original line number Diff line number Diff line
@@ -32,6 +32,17 @@ stdenv.mkDerivation rec {
      url = "https://git.entrouvert.org/entrouvert/lasso/commit/ffaddeb015a61db3e52c391de00430107a23e2f1.patch";
      hash = "sha256-D2npxpIuR/KrNYiKO3KXCvHEb/XVXUKIP0HQUd+w56k=";
    })
    # Fix GCC 14 implicit declaration of function
    # backported patch of https://git.entrouvert.org/entrouvert/lasso/commit/9767cdf7645a146bcc596a705ce32b855855a590
    ./fix-gcc14-implicit-function-declaration.diff
    # Fix GCC 14 incompatible pointer
    # backported patch of https://git.entrouvert.org/entrouvert/lasso/commit/cbe2c45455d93ed793dc4be59e3d2d26f1bd1111
    ./fix-gcc14-incompatible-pointer.diff
    # Fix GCC 14 int-conversion (xmlsec)
    (fetchpatch {
      url = "https://git.entrouvert.org/entrouvert/lasso/commit/66c9f50f1f6b00d621a9a0ca2f924875f94d14ae.patch";
      hash = "sha256-UkWxznKx2xAbjY29+NQ+cjIDhWLuyoWsmBTSiLUxWgU=";
    })
  ];

  nativeBuildInputs = [