summaryrefslogtreecommitdiff
path: root/gnu/packages/patches
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r--gnu/packages/patches/a2ps-CVE-2001-1593.patch69
-rw-r--r--gnu/packages/patches/a2ps-CVE-2014-0466.patch30
-rw-r--r--gnu/packages/patches/a2ps-CVE-2015-8107.patch80
-rw-r--r--gnu/packages/patches/dbacl-icheck-multiple-definitions.patch33
-rw-r--r--gnu/packages/patches/fpm-newer-clamp-fix.patch33
-rw-r--r--gnu/packages/patches/geeqie-clutter.patch35
-rw-r--r--gnu/packages/patches/glslang-install-static-libs.patch61
-rw-r--r--gnu/packages/patches/guile-fix-invalid-unicode-handling.patch83
-rw-r--r--gnu/packages/patches/heimdal-CVE-2022-45142.patch49
-rw-r--r--gnu/packages/patches/jami-libjami-headers-search.patch45
-rw-r--r--gnu/packages/patches/libcdio-glibc-compat.patch43
-rw-r--r--gnu/packages/patches/mariadb-link-libatomic.patch83
-rw-r--r--gnu/packages/patches/mecab-variable-param.patch30
-rw-r--r--gnu/packages/patches/openboardview-use-system-mpc.patch42
-rw-r--r--gnu/packages/patches/openboardview-use-system-utf8.patch48
-rw-r--r--gnu/packages/patches/orangeduck-mpc-fix-pkg-config.patch25
-rw-r--r--gnu/packages/patches/python-afdko-suppress-copyright-test.patch20
-rw-r--r--gnu/packages/patches/python2-pyopenssl-openssl-compat.patch51
-rw-r--r--gnu/packages/patches/ruby-hiredis-use-system-hiredis.patch52
-rw-r--r--gnu/packages/patches/rust-openssl-sys-no-vendor.patch30
-rw-r--r--gnu/packages/patches/webkitgtk-libelogind.patch38
21 files changed, 519 insertions, 461 deletions
diff --git a/gnu/packages/patches/a2ps-CVE-2001-1593.patch b/gnu/packages/patches/a2ps-CVE-2001-1593.patch
deleted file mode 100644
index 17b7e7d932..0000000000
--- a/gnu/packages/patches/a2ps-CVE-2001-1593.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-Index: b/lib/routines.c
-===================================================================
---- a/lib/routines.c
-+++ b/lib/routines.c
-@@ -242,3 +242,50 @@
- /* Don't complain if you can't unlink. Who cares of a tmp file? */
- unlink (filename);
- }
-+
-+/*
-+ * Securely generate a temp file, and make sure it gets
-+ * deleted upon exit.
-+ */
-+static char ** tempfiles;
-+static unsigned ntempfiles;
-+
-+static void
-+cleanup_tempfiles()
-+{
-+ while (ntempfiles--)
-+ unlink(tempfiles[ntempfiles]);
-+}
-+
-+char *
-+safe_tempnam(const char *pfx)
-+{
-+ char *dirname, *filename;
-+ int fd;
-+
-+ if (!(dirname = getenv("TMPDIR")))
-+ dirname = "/tmp";
-+
-+ tempfiles = (char **) realloc(tempfiles,
-+ (ntempfiles+1) * sizeof(char *));
-+ if (tempfiles == NULL)
-+ return NULL;
-+
-+ filename = malloc(strlen(dirname) + strlen(pfx) + sizeof("/XXXXXX"));
-+ if (!filename)
-+ return NULL;
-+
-+ sprintf(filename, "%s/%sXXXXXX", dirname, pfx);
-+
-+ if ((fd = mkstemp(filename)) < 0) {
-+ free(filename);
-+ return NULL;
-+ }
-+ close(fd);
-+
-+ if (ntempfiles == 0)
-+ atexit(cleanup_tempfiles);
-+ tempfiles[ntempfiles++] = filename;
-+
-+ return filename;
-+}
-Index: b/lib/routines.h
-===================================================================
---- a/lib/routines.h
-+++ b/lib/routines.h
-@@ -255,7 +255,8 @@
- /* If _STR_ is not defined, give it a tempname in _TMPDIR_ */
- #define tempname_ensure(Str) \
- do { \
-- (Str) = (Str) ? (Str) : tempnam (NULL, "a2_"); \
-+ (Str) = (Str) ? (Str) : safe_tempnam("a2_"); \
- } while (0)
-+char * safe_tempnam(const char *);
-
- #endif
diff --git a/gnu/packages/patches/a2ps-CVE-2014-0466.patch b/gnu/packages/patches/a2ps-CVE-2014-0466.patch
deleted file mode 100644
index 85199e35b0..0000000000
--- a/gnu/packages/patches/a2ps-CVE-2014-0466.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Description: CVE-2014-0466: fixps does not invoke gs with -dSAFER
- A malicious PostScript file could delete files with the privileges of
- the invoking user.
-Origin: vendor
-Bug-Debian: http://bugs.debian.org/742902
-Author: Salvatore Bonaccorso <carnil@debian.org>
-Last-Update: 2014-03-28
-
---- a/contrib/fixps.in
-+++ b/contrib/fixps.in
-@@ -389,7 +389,7 @@
- eval "$command" ;;
- gs)
- $verbose "$program: making a full rewrite of the file ($gs)." >&2
-- $gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f $file ;;
-+ $gs -q -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f $file ;;
- esac
- )
- fi
---- a/contrib/fixps.m4
-+++ b/contrib/fixps.m4
-@@ -307,7 +307,7 @@
- eval "$command" ;;
- gs)
- $verbose "$program: making a full rewrite of the file ($gs)." >&2
-- $gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f $file ;;
-+ $gs -q -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f $file ;;
- esac
- )
- fi
diff --git a/gnu/packages/patches/a2ps-CVE-2015-8107.patch b/gnu/packages/patches/a2ps-CVE-2015-8107.patch
deleted file mode 100644
index 5ea35d45da..0000000000
--- a/gnu/packages/patches/a2ps-CVE-2015-8107.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-https://sources.debian.org/data/main/a/a2ps/1:4.14-2/debian/patches/fix-format-security.diff
-
-Index: b/lib/psgen.c
-===================================================================
---- a/lib/psgen.c
-+++ b/lib/psgen.c
-@@ -232,7 +232,7 @@
- default:
- *buf = '\0';
- ps_escape_char (job, cp[i], buf);
-- output (jdiv, (char *) buf);
-+ output (jdiv, "%s", (char *) buf);
- break;
- }
- }
-Index: b/lib/output.c
-===================================================================
---- a/lib/output.c
-+++ b/lib/output.c
-@@ -525,7 +525,7 @@
- expand_user_string (job, FIRST_FILE (job),
- (const uchar *) "Expand: requirement",
- (const uchar *) token));
-- output (dest, expansion);
-+ output (dest, "%s", expansion);
- continue;
- }
-
-Index: b/lib/parseppd.y
-===================================================================
---- a/lib/parseppd.y
-+++ b/lib/parseppd.y
-@@ -154,7 +154,7 @@
- void
- yyerror (const char *msg)
- {
-- error_at_line (1, 0, ppdfilename, ppdlineno, msg);
-+ error_at_line (1, 0, ppdfilename, ppdlineno, "%s", msg);
- }
-
- /*
-Index: b/src/parsessh.y
-===================================================================
---- a/src/parsessh.y
-+++ b/src/parsessh.y
-@@ -740,7 +740,7 @@
- void
- yyerror (const char *msg)
- {
-- error_at_line (1, 0, sshfilename, sshlineno, msg);
-+ error_at_line (1, 0, sshfilename, sshlineno, "%s", msg);
- }
-
- /*
-Index: b/lib/parseppd.c
-===================================================================
---- a/lib/parseppd.c
-+++ b/lib/parseppd.c
-@@ -1707,7 +1707,7 @@
- void
- yyerror (const char *msg)
- {
-- error_at_line (1, 0, ppdfilename, ppdlineno, msg);
-+ error_at_line (1, 0, ppdfilename, ppdlineno, "%s", msg);
- }
-
- /*
-Index: b/src/parsessh.c
-===================================================================
---- a/src/parsessh.c
-+++ b/src/parsessh.c
-@@ -2639,7 +2639,7 @@
- void
- yyerror (const char *msg)
- {
-- error_at_line (1, 0, sshfilename, sshlineno, msg);
-+ error_at_line (1, 0, sshfilename, sshlineno, "%s", msg);
- }
-
- /*
diff --git a/gnu/packages/patches/dbacl-icheck-multiple-definitions.patch b/gnu/packages/patches/dbacl-icheck-multiple-definitions.patch
new file mode 100644
index 0000000000..e82d0819bb
--- /dev/null
+++ b/gnu/packages/patches/dbacl-icheck-multiple-definitions.patch
@@ -0,0 +1,33 @@
+From f5df6813e305372e25b8a2124c491293a176e115 Mon Sep 17 00:00:00 2001
+From: Danny O'Brien <danny@spesh.com>
+Date: Fri, 3 Feb 2023 16:48:59 -0800
+Subject: [PATCH] Fix failing build of icheck.
+
+Building icheck fails with a duplicate symbol definition
+error. This allows the icheck executable to compile.
+
+Submitted upstream[1] but not yet moderated/accepted.
+
+[1] https://sourceforge.net/p/dbacl/discussion/239876/thread/87636b0114/
+
+---
+ src/icheck.c | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/src/icheck.c b/src/icheck.c
+index efbb6a5..12a3b7a 100644
+--- a/src/icheck.c
++++ b/src/icheck.c
+@@ -39,9 +39,6 @@ extern regex_count_t regex_count;
+ extern empirical_t empirical;
+
+ extern int cmd;
+-char *progname = "icheck";
+-char *inputfile = "";
+-long inputline = 0;
+
+ extern long system_pagesize;
+ extern void *in_iobuf;
+--
+2.39.1
+
diff --git a/gnu/packages/patches/fpm-newer-clamp-fix.patch b/gnu/packages/patches/fpm-newer-clamp-fix.patch
new file mode 100644
index 0000000000..9fbb15ee29
--- /dev/null
+++ b/gnu/packages/patches/fpm-newer-clamp-fix.patch
@@ -0,0 +1,33 @@
+Retrieved from: https://github.com/jordansissel/fpm/pull/1561.patch
+
+From 956a218a7b35de08ea35da3b702ffdc716656b68 Mon Sep 17 00:00:00 2001
+From: Jordan Sissel <jls@semicomplete.com>
+Date: Mon, 15 Oct 2018 21:05:47 -0700
+Subject: [PATCH] Check if an option has a default value before we try to look
+ it up.
+
+This fixes fpm when used with clamp 1.3.0 or above.
+
+Fixes #1543
+---
+ lib/fpm/command.rb | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/lib/fpm/command.rb b/lib/fpm/command.rb
+index a204001e1..a99ddb627 100644
+--- a/lib/fpm/command.rb
++++ b/lib/fpm/command.rb
+@@ -394,7 +394,12 @@ def execute
+ set = proc do |object, attribute|
+ # if the package's attribute is currently nil *or* the flag setting for this
+ # attribute is non-default, use the value.
+- if object.send(attribute).nil? || send(attribute) != send("default_#{attribute}")
++
++ # Not all options have a default value, so we assume `nil` if there's no default. (#1543)
++ # In clamp >= 1.3.0, options without `:default => ..` will not have any # `default_xyz`
++ # methods generated, so we need to check for the presence of this method first.
++ default = respond_to?("default_#{attribute}") ? send("default_#{attribute}") : nil
++ if object.send(attribute).nil? || send(attribute) != default
+ logger.info("Setting from flags: #{attribute}=#{send(attribute)}")
+ object.send("#{attribute}=", send(attribute))
+ end
diff --git a/gnu/packages/patches/geeqie-clutter.patch b/gnu/packages/patches/geeqie-clutter.patch
deleted file mode 100644
index ab7cc957d8..0000000000
--- a/gnu/packages/patches/geeqie-clutter.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From c99084ac5fc2fb854ff8e8abd4bd3298fb08fb43 Mon Sep 17 00:00:00 2001
-From: Colin Clark <colin.clark@cclark.uk>
-Date: Sat, 9 Jan 2021 11:35:41 +0000
-Subject: [PATCH] Fix #829: segfault with clutter-gtk
-
-https://github.com/BestImageViewer/geeqie/issues/829
-
-This fix might cause other problems which might be cured by calling:
-LIBGL_ALWAYS_INDIRECT=1 geeqie
-
-or, worst case:
-geeqie --disable-clutter
----
- src/main.c | 5 -----
- 1 file changed, 5 deletions(-)
-
-diff --git a/src/main.c b/src/main.c
-index f497240d..4af654fe 100644
---- a/src/main.c
-+++ b/src/main.c
-@@ -904,11 +904,6 @@ gint main(gint argc, gchar *argv[])
- #ifdef HAVE_GTHREAD
- #if !GLIB_CHECK_VERSION(2,32,0)
- g_thread_init(NULL);
--#endif
--#ifdef HAVE_CLUTTER
--/* FIXME: see below */
-- putenv("LIBGL_ALWAYS_INDIRECT=1");
-- XInitThreads();
- #endif
- gdk_threads_init();
- gdk_threads_enter();
---
-2.34.0
-
diff --git a/gnu/packages/patches/glslang-install-static-libs.patch b/gnu/packages/patches/glslang-install-static-libs.patch
new file mode 100644
index 0000000000..a155dde30e
--- /dev/null
+++ b/gnu/packages/patches/glslang-install-static-libs.patch
@@ -0,0 +1,61 @@
+Install OGLCompiler et.al. even when building shared libraries. Also fix
+CMake file locations.
+
+Patch taken from Gentoo:
+
+ https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-util/glslang/files/glslang-1.3.231-Install-static-libs.patch
+
+diff --git a/OGLCompilersDLL/CMakeLists.txt b/OGLCompilersDLL/CMakeLists.txt
+--- a/OGLCompilersDLL/CMakeLists.txt
++++ b/OGLCompilersDLL/CMakeLists.txt
+@@ -41,7 +41,7 @@ if(WIN32)
+ source_group("Source" FILES ${SOURCES})
+ endif(WIN32)
+
+-if(ENABLE_GLSLANG_INSTALL AND NOT BUILD_SHARED_LIBS)
++if(ENABLE_GLSLANG_INSTALL)
+ install(TARGETS OGLCompiler EXPORT glslang-targets)
+
+ # Backward compatibility
+@@ -49,7 +49,7 @@ if(ENABLE_GLSLANG_INSTALL AND NOT BUILD_SHARED_LIBS)
+ message(WARNING \"Using `OGLCompilerTargets.cmake` is deprecated: use `find_package(glslang)` to find glslang CMake targets.\")
+
+ if (NOT TARGET glslang::OGLCompiler)
+- include(\"\${CMAKE_CURRENT_LIST_DIR}/../../${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}/glslang-targets.cmake\")
++ include(\"\${CMAKE_CURRENT_LIST_DIR}/../../${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/glslang-targets.cmake\")
+ endif()
+
+ add_library(OGLCompiler ALIAS glslang::OGLCompiler)
+diff --git a/glslang/CMakeLists.txt b/glslang/CMakeLists.txt
+--- a/glslang/CMakeLists.txt
++++ b/glslang/CMakeLists.txt
+@@ -203,7 +203,7 @@ endif()
+ ################################################################################
+ if(ENABLE_GLSLANG_INSTALL)
+ install(TARGETS glslang EXPORT glslang-targets)
+- if(NOT BUILD_SHARED_LIBS)
++ if(BUILD_SHARED_LIBS)
+ install(TARGETS MachineIndependent EXPORT glslang-targets)
+ install(TARGETS GenericCodeGen EXPORT glslang-targets)
+
+diff --git a/glslang/OSDependent/Unix/CMakeLists.txt b/glslang/OSDependent/Unix/CMakeLists.txt
+--- a/glslang/OSDependent/Unix/CMakeLists.txt
++++ b/glslang/OSDependent/Unix/CMakeLists.txt
+@@ -52,7 +52,7 @@ else()
+ target_link_libraries(OSDependent Threads::Threads)
+ endif()
+
+-if(ENABLE_GLSLANG_INSTALL AND NOT BUILD_SHARED_LIBS)
++if(ENABLE_GLSLANG_INSTALL)
+ install(TARGETS OSDependent EXPORT glslang-targets)
+
+ # Backward compatibility
+@@ -60,7 +60,7 @@ if(ENABLE_GLSLANG_INSTALL AND NOT BUILD_SHARED_LIBS)
+ message(WARNING \"Using `OSDependentTargets.cmake` is deprecated: use `find_package(glslang)` to find glslang CMake targets.\")
+
+ if (NOT TARGET glslang::OSDependent)
+- include(\"\${CMAKE_CURRENT_LIST_DIR}/../../${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}/glslang-targets.cmake\")
++ include(\"\${CMAKE_CURRENT_LIST_DIR}/../../${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/glslang-targets.cmake\")
+ endif()
+
+ add_library(OSDependent ALIAS glslang::OSDependent)
diff --git a/gnu/packages/patches/guile-fix-invalid-unicode-handling.patch b/gnu/packages/patches/guile-fix-invalid-unicode-handling.patch
new file mode 100644
index 0000000000..20ee1a2cf5
--- /dev/null
+++ b/gnu/packages/patches/guile-fix-invalid-unicode-handling.patch
@@ -0,0 +1,83 @@
+Reported upstream at https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62290 and
+patch merged as cba2e7e3fec3c781230570f5d1ef070625eeeda8.
+
+From 31a1c3c4783e8e66b93500737f23f209d8115f77 Mon Sep 17 00:00:00 2001
+From: Christopher Baines <mail@cbaines.net>
+Date: Fri, 17 Mar 2023 12:48:39 +0000
+Subject: [PATCH] Fix some invalid unicode handling issues with suspendable
+ ports.
+
+Based on the implementation in ports.c. I don't understand what this
+code is really doing, but the suspendable ports implementation differs
+from the similar C code for a couple of inequalities.
+
+* module/ice-9/suspendable-ports.scm (decode-utf8, bad-utf8-len): Flip a
+couple of inequalities.
+* test-suite/tests/ports.test ("string ports"): Add additional invalid
+UTF-8 test case.
+---
+ module/ice-9/suspendable-ports.scm | 8 ++++----
+ test-suite/tests/ports.test | 7 +++++++
+ 2 files changed, 11 insertions(+), 4 deletions(-)
+
+diff --git a/module/ice-9/suspendable-ports.scm b/module/ice-9/suspendable-ports.scm
+index a823f1d37..9fac1df62 100644
+--- a/module/ice-9/suspendable-ports.scm
++++ b/module/ice-9/suspendable-ports.scm
+@@ -419,7 +419,7 @@
+ (= (logand u8_2 #xc0) #x80)
+ (case u8_0
+ ((#xe0) (>= u8_1 #xa0))
+- ((#xed) (>= u8_1 #x9f))
++ ((#xed) (<= u8_1 #x9f))
+ (else #t)))
+ (kt (integer->char
+ (logior (ash (logand u8_0 #x0f) 12)
+@@ -436,7 +436,7 @@
+ (= (logand u8_3 #xc0) #x80)
+ (case u8_0
+ ((#xf0) (>= u8_1 #x90))
+- ((#xf4) (>= u8_1 #x8f))
++ ((#xf4) (<= u8_1 #x8f))
+ (else #t)))
+ (kt (integer->char
+ (logior (ash (logand u8_0 #x07) 18)
+@@ -462,7 +462,7 @@
+ ((< buffering 2) 1)
+ ((not (= (logand (ref 1) #xc0) #x80)) 1)
+ ((and (eq? first-byte #xe0) (< (ref 1) #xa0)) 1)
+- ((and (eq? first-byte #xed) (< (ref 1) #x9f)) 1)
++ ((and (eq? first-byte #xed) (> (ref 1) #x9f)) 1)
+ ((< buffering 3) 2)
+ ((not (= (logand (ref 2) #xc0) #x80)) 2)
+ (else 0)))
+@@ -471,7 +471,7 @@
+ ((< buffering 2) 1)
+ ((not (= (logand (ref 1) #xc0) #x80)) 1)
+ ((and (eq? first-byte #xf0) (< (ref 1) #x90)) 1)
+- ((and (eq? first-byte #xf4) (< (ref 1) #x8f)) 1)
++ ((and (eq? first-byte #xf4) (> (ref 1) #x8f)) 1)
+ ((< buffering 3) 2)
+ ((not (= (logand (ref 2) #xc0) #x80)) 2)
+ ((< buffering 4) 3)
+diff --git a/test-suite/tests/ports.test b/test-suite/tests/ports.test
+index 66e10e3dd..1b30e1a68 100644
+--- a/test-suite/tests/ports.test
++++ b/test-suite/tests/ports.test
+@@ -1059,6 +1059,13 @@
+ eof))
+
+ (test-decoding-error (#xf0 #x88 #x88 #x88) "UTF-8"
++ (error ;; 2nd byte should be in the 90..BF range
++ error ;; 88: not a valid starting byte
++ error ;; 88: not a valid starting byte
++ error ;; 88: not a valid starting byte
++ eof))
++
++ (test-decoding-error (#xf4 #xa4 #xbd #xa4) "UTF-8"
+ (error ;; 2nd byte should be in the 90..BF range
+ error ;; 88: not a valid starting byte
+ error ;; 88: not a valid starting byte
+--
+2.39.1
+
diff --git a/gnu/packages/patches/heimdal-CVE-2022-45142.patch b/gnu/packages/patches/heimdal-CVE-2022-45142.patch
new file mode 100644
index 0000000000..a7258a937c
--- /dev/null
+++ b/gnu/packages/patches/heimdal-CVE-2022-45142.patch
@@ -0,0 +1,49 @@
+From: Helmut Grohne <helmut@...divi.de>
+Subject: [PATCH v3] CVE-2022-45142: gsskrb5: fix accidental logic inversions
+
+The referenced commit attempted to fix miscompilations with gcc-9 and
+gcc-10 by changing `memcmp(...)` to `memcmp(...) != 0`. Unfortunately,
+it also inverted the result of the comparison in two occasions. This
+inversion happened during backporting the patch to 7.7.1 and 7.8.0.
+
+Fixes: f6edaafcfefd ("gsskrb5: CVE-2022-3437 Use constant-time memcmp()
+ for arcfour unwrap")
+Signed-off-by: Helmut Grohne <helmut@...divi.de>
+---
+ lib/gssapi/krb5/arcfour.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Changes since v1:
+ * Fix typo in commit message.
+ * Mention 7.8.0 in commit message. Thanks to Jeffrey Altman.
+
+Changes since v2:
+ * Add CVE identifier.
+
+NB (Felix Lechner): The message above and the patch below were taken from the
+disclosure here: https://www.openwall.com/lists/oss-security/2023/02/08/1
+
+diff --git a/lib/gssapi/krb5/arcfour.c b/lib/gssapi/krb5/arcfour.c
+index e838d007a..eee6ad72f 100644
+--- a/lib/gssapi/krb5/arcfour.c
++++ b/lib/gssapi/krb5/arcfour.c
+@@ -365,7 +365,7 @@ _gssapi_verify_mic_arcfour(OM_uint32 * minor_status,
+ return GSS_S_FAILURE;
+ }
+
+- cmp = (ct_memcmp(cksum_data, p + 8, 8) == 0);
++ cmp = (ct_memcmp(cksum_data, p + 8, 8) != 0);
+ if (cmp) {
+ *minor_status = 0;
+ return GSS_S_BAD_MIC;
+@@ -730,7 +730,7 @@ OM_uint32 _gssapi_unwrap_arcfour(OM_uint32 *minor_status,
+ return GSS_S_FAILURE;
+ }
+
+- cmp = (ct_memcmp(cksum_data, p0 + 16, 8) == 0); /* SGN_CKSUM */
++ cmp = (ct_memcmp(cksum_data, p0 + 16, 8) != 0); /* SGN_CKSUM */
+ if (cmp) {
+ _gsskrb5_release_buffer(minor_status, output_message_buffer);
+ *minor_status = 0;
+--
+2.38.1
diff --git a/gnu/packages/patches/jami-libjami-headers-search.patch b/gnu/packages/patches/jami-libjami-headers-search.patch
index b3384ba563..92cc92a4a6 100644
--- a/gnu/packages/patches/jami-libjami-headers-search.patch
+++ b/gnu/packages/patches/jami-libjami-headers-search.patch
@@ -1,30 +1,10 @@
-From 1168aba6181e30ee4c322e5f437bde22bece5698 Mon Sep 17 00:00:00 2001
-From: Maxim Cournoyer <maxim.cournoyer@savoirfairelinux.com>
-Date: Sat, 5 Nov 2022 23:18:13 -0400
-Subject: [PATCH 1/3] cmake: Simplify lookup logic for libjami headers.
-
-* extras/build/cmake/modules/FindLibJami.cmake: Rename
-LIBJAMI_INCLUDE_DIRS to LIBJAMI_INCLUDE_DIR. Use find_path to search
-for jami.h directory.
-* CMakeLists.txt: Adjust accordingly.
-* src/libclient/CMakeLists.txt: Likewise.
-* src/libclient/qtwrapper/CMakeLists.txt: Likewise.
-
-Change-Id: I494358f9bfafb41f000daeec4196747b2c184401
----
-Upstream status: https://review.jami.net/c/jami-client-qt/+/22973
-
- CMakeLists.txt | 2 +-
- extras/build/cmake/modules/FindLibJami.cmake | 21 ++++++--------------
- src/libclient/CMakeLists.txt | 2 +-
- src/libclient/qtwrapper/CMakeLists.txt | 2 +-
- 4 files changed, 9 insertions(+), 18 deletions(-)
+Upstream status: https://review.jami.net/c/jami-client-qt/+/24273.
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index d0a8fd70..94ac6074 100644
+index 8d71b84b..36729698 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -118,7 +118,7 @@ set(CMAKE_MODULE_PATH
+@@ -136,7 +136,7 @@ set(CMAKE_MODULE_PATH
${CMAKE_MODULE_PATH} "${EXTRAS_DIR}/build/cmake/modules")
find_package(LibJami REQUIRED)
if(LIBJAMI_FOUND)
@@ -34,15 +14,15 @@ index d0a8fd70..94ac6074 100644
include(FindPython3)
diff --git a/extras/build/cmake/modules/FindLibJami.cmake b/extras/build/cmake/modules/FindLibJami.cmake
-index ddb05319..9ad20d2b 100644
+index 5cce45fc..11746cd8 100644
--- a/extras/build/cmake/modules/FindLibJami.cmake
+++ b/extras/build/cmake/modules/FindLibJami.cmake
-@@ -20,28 +20,19 @@
+@@ -20,30 +20,19 @@
# Once done, this find module will set:
#
-# LIBJAMI_INCLUDE_DIRS - libjami include directories
-+# LIBJAMI_INCLUDE_DIR - libjami include directories
++# LIBJAMI_INCLUDE_DIR - libjami include directory
# LIBJAMI_FOUND - whether it was able to find the include directories
# LIBJAMI_LIB - path to libjami or libring library
@@ -62,16 +42,18 @@ index ddb05319..9ad20d2b 100644
- set(LIBJAMI_INCLUDE_DIRS ${RING_BUILD_DIR}/jami)
- elseif(EXISTS ${CMAKE_INSTALL_PREFIX}/include/jami/jami.h)
- set(LIBJAMI_INCLUDE_DIRS ${CMAKE_INSTALL_PREFIX}/include/jami)
+- elseif(EXISTS ${CMAKE_INSTALL_PREFIX}/daemon/include/jami/jami.h)
+- set(LIBJAMI_INCLUDE_DIRS ${CMAKE_INSTALL_PREFIX}/daemon/include/jami)
- else()
+ find_path(LIBJAMI_INCLUDE_DIR jami.h PATH_SUFFIXES jami)
+ if(NOT LIBJAMI_INCLUDE_DIR)
message(STATUS "Jami daemon headers not found!
-Set -DLIBJAMI_BUILD_DIR or -DCMAKE_INSTALL_PREFIX")
-+Set -DCMAKE_INSTALL_PREFIX or use -DWITH_DAEMON_SUBMODULE")
++To build using the daemon git submodule, set -DWITH_DAEMON_SUBMODULE")
set(LIBJAMI_FOUND false)
endif()
endif()
-@@ -102,5 +93,5 @@ endif()
+@@ -115,5 +104,5 @@ endif()
# Restore the original value of CMAKE_FIND_LIBRARY_SUFFIXES.
set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES_orig})
@@ -79,7 +61,7 @@ index ddb05319..9ad20d2b 100644
+message(STATUS "Jami daemon headers are in " ${LIBJAMI_INCLUDE_DIR})
message(STATUS "Jami daemon library is at " ${LIBJAMI_LIB})
diff --git a/src/libclient/CMakeLists.txt b/src/libclient/CMakeLists.txt
-index 2676c9c4..ac58ea2b 100644
+index 144efaf5..cb87fc2a 100644
--- a/src/libclient/CMakeLists.txt
+++ b/src/libclient/CMakeLists.txt
@@ -62,7 +62,7 @@ set(CMAKE_MODULE_PATH
@@ -92,7 +74,7 @@ index 2676c9c4..ac58ea2b 100644
string(SUBSTRING ${CMAKE_GENERATOR} 0 14 CMAKE_GENERATOR_SHORT)
diff --git a/src/libclient/qtwrapper/CMakeLists.txt b/src/libclient/qtwrapper/CMakeLists.txt
-index acee0d0c..ba68aac4 100644
+index 46887051..a20658ad 100644
--- a/src/libclient/qtwrapper/CMakeLists.txt
+++ b/src/libclient/qtwrapper/CMakeLists.txt
@@ -46,7 +46,7 @@ else()
@@ -104,6 +86,3 @@ index acee0d0c..ba68aac4 100644
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../dbus)
---
-2.37.3
-
diff --git a/gnu/packages/patches/libcdio-glibc-compat.patch b/gnu/packages/patches/libcdio-glibc-compat.patch
new file mode 100644
index 0000000000..1d325bce96
--- /dev/null
+++ b/gnu/packages/patches/libcdio-glibc-compat.patch
@@ -0,0 +1,43 @@
+Fix test failure with glibc 2.36:
+
+ https://savannah.gnu.org/bugs/?62948
+
+Patch taken from upstream:
+
+ https://git.savannah.gnu.org/cgit/libcdio.git/commit/?id=56335fff0f21d294cd0e478d49542a43e9495ed0
+
+diff --git a/test/driver/realpath.c b/test/driver/realpath.c
+index 289253e..cd46d62 100644
+--- a/test/driver/realpath.c
++++ b/test/driver/realpath.c
+@@ -1,5 +1,7 @@
+ /* -*- C -*-
+- Copyright (C) 2010-2012, 2015, 2017 Rocky Bernstein <rocky@gnu.org>
++
++ Copyright (C) 2010-2012, 2015, 2017, 2022 Rocky Bernstein
++ <rocky@gnu.org>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+@@ -175,16 +177,17 @@ main(int argc, const char *argv[])
+ rc = check_rc(symlink(psz_symlink_file, psz_symlink_file),
+ "symlink", psz_symlink_file);
+ if (0 == rc) {
+- cdio_realpath(psz_symlink_file, psz_file_check);
+- if (0 != strncmp(psz_file_check, symlink_file, PATH_MAX)) {
++ char *retvalue = cdio_realpath(psz_symlink_file, psz_file_check);
++ if (0 != retvalue) {
++ if (0 != strncmp(psz_file_check, symlink_file, PATH_MAX)) {
+ fprintf(stderr, "direct cdio_realpath cycle test failed. %s vs %s\n",
+ psz_file_check, symlink_file);
+ rc = 5;
+ goto err_exit;
++ }
++ check_rc(unlink(psz_symlink_file), "unlink", psz_symlink_file);
+ }
+- check_rc(unlink(psz_symlink_file), "unlink", psz_symlink_file);
+ }
+-
+ }
+
+ check_rc(unlink(psz_orig_file), "unlink", psz_orig_file);
diff --git a/gnu/packages/patches/mariadb-link-libatomic.patch b/gnu/packages/patches/mariadb-link-libatomic.patch
deleted file mode 100644
index f331067b6e..0000000000
--- a/gnu/packages/patches/mariadb-link-libatomic.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-https://github.com/MariaDB/server/commit/f502ccbcb5dfce29067434885a23db8d1bd5f134.patch
-This was apparently merged in 10.8.2.
-
-From f502ccbcb5dfce29067434885a23db8d1bd5f134 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Vicen=C8=9Biu=20Ciorbaru?= <cvicentiu@gmail.com>
-Date: Fri, 15 Oct 2021 16:51:05 +0300
-Subject: [PATCH] Link with libatomic to enable C11 atomics support
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Some architectures (mips) require libatomic to support proper
-atomic operations. Check first if support is available without
-linking, otherwise use the library.
-
-Contributors:
-James Cowgill <jcowgill@debian.org>
-Jessica Clarke <jrtc27@debian.org>
-Vicențiu Ciorbaru <vicentiu@mariadb.org>
----
- configure.cmake | 20 +++++++++++++++++++-
- mysys/CMakeLists.txt | 4 ++++
- sql/CMakeLists.txt | 1 -
- 3 files changed, 23 insertions(+), 2 deletions(-)
-
-diff --git a/configure.cmake b/configure.cmake
-index 7a1369d77703f..db8742bb93b5a 100644
---- a/configure.cmake
-+++ b/configure.cmake
-@@ -895,7 +895,25 @@ int main()
- long long int *ptr= &var;
- return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST);
- }"
--HAVE_GCC_C11_ATOMICS)
-+HAVE_GCC_C11_ATOMICS_WITHOUT_LIBATOMIC)
-+IF (HAVE_GCC_C11_ATOMICS_WITHOUT_LIBATOMIC)
-+ SET(HAVE_GCC_C11_ATOMICS True)
-+ELSE()
-+ SET(OLD_CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES})
-+ LIST(APPEND CMAKE_REQUIRED_LIBRARIES "atomic")
-+ CHECK_CXX_SOURCE_COMPILES("
-+ int main()
-+ {
-+ long long int var= 1;
-+ long long int *ptr= &var;
-+ return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST);
-+ }"
-+ HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
-+ IF(HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
-+ SET(HAVE_GCC_C11_ATOMICS True)
-+ ENDIF()
-+ SET(CMAKE_REQUIRED_LIBRARIES ${OLD_CMAKE_REQUIRED_LIBRARIES})
-+ENDIF()
-
- IF(WITH_VALGRIND)
- SET(HAVE_valgrind 1)
-diff --git a/mysys/CMakeLists.txt b/mysys/CMakeLists.txt
-index f97e3b4d3904c..09d3f726ffc74 100644
---- a/mysys/CMakeLists.txt
-+++ b/mysys/CMakeLists.txt
-@@ -78,6 +78,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings ${ZLIB_LIBRARY}
- ${LIBNSL} ${LIBM} ${LIBRT} ${CMAKE_DL_LIBS} ${LIBSOCKET} ${LIBEXECINFO} ${CRC32_LIBRARY})
- DTRACE_INSTRUMENT(mysys)
-
-+IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
-+ TARGET_LINK_LIBRARIES(mysys atomic)
-+ENDIF()
-+
- IF(HAVE_BFD_H)
- TARGET_LINK_LIBRARIES(mysys bfd)
- ENDIF(HAVE_BFD_H)
-diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt
-index 5f5d7daf1a5bc..f574f1f20295d 100644
---- a/sql/CMakeLists.txt
-+++ b/sql/CMakeLists.txt
-@@ -307,7 +307,6 @@ IF(WITH_MYSQLD_LDFLAGS)
- "${MYSQLD_LINK_FLAGS} ${WITH_MYSQLD_LDFLAGS}")
- ENDIF()
-
--
- FIND_PACKAGE(BISON 2.0)
-
-
diff --git a/gnu/packages/patches/mecab-variable-param.patch b/gnu/packages/patches/mecab-variable-param.patch
new file mode 100644
index 0000000000..4457cf3f44
--- /dev/null
+++ b/gnu/packages/patches/mecab-variable-param.patch
@@ -0,0 +1,30 @@
+From 2396e90056706ef897acab3aaa081289c7336483 Mon Sep 17 00:00:00 2001
+From: LEPILLER Julien <julien.lepiller@irisa.fr>
+Date: Fri, 19 Apr 2019 11:48:39 +0200
+Subject: [PATCH] Allow variable parameters
+
+---
+ mecab/src/param.cpp | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/mecab/src/param.cpp b/mecab/src/param.cpp
+index 65328a2..006b1b5 100644
+--- a/mecab/src/param.cpp
++++ b/mecab/src/param.cpp
+@@ -79,8 +79,12 @@ bool Param::load(const char *filename) {
+ size_t s1, s2;
+ for (s1 = pos+1; s1 < line.size() && isspace(line[s1]); s1++);
+ for (s2 = pos-1; static_cast<long>(s2) >= 0 && isspace(line[s2]); s2--);
+- const std::string value = line.substr(s1, line.size() - s1);
++ std::string value = line.substr(s1, line.size() - s1);
+ const std::string key = line.substr(0, s2 + 1);
++
++ if(value.find('$') == 0) {
++ value = std::getenv(value.substr(1).c_str());
++ }
+ set<std::string>(key.c_str(), value, false);
+ }
+
+--
+2.20.1
+
diff --git a/gnu/packages/patches/openboardview-use-system-mpc.patch b/gnu/packages/patches/openboardview-use-system-mpc.patch
new file mode 100644
index 0000000000..7726c55fe8
--- /dev/null
+++ b/gnu/packages/patches/openboardview-use-system-mpc.patch
@@ -0,0 +1,42 @@
+Upstream status: https://github.com/OpenBoardView/OpenBoardView/pull/281
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 452dfa9..e30c3cf 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -206,13 +206,15 @@ endif()
+ add_definitions(-DSTBI_FAILURE_USERMSG)
+
+ ## mpc - Micro Parser Combinators ##
+-execute_process(
+- COMMAND git submodule update --init src/mpc
+- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
+-)
+-
+-add_library(mpc STATIC "mpc/mpc.c")
+-
++pkg_check_modules(MPC QUIET mpc)
++if(NOT MPC_FOUND)
++ execute_process(
++ COMMAND git submodule update --init src/mpc
++ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
++ )
++ add_library(mpc STATIC "mpc/mpc.c")
++ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/mpc)
++endif()
+
+ ## OpenBoardView ##
+ add_subdirectory(openboardview)
+diff --git a/src/openboardview/FileFormats/GenCADFile.h b/src/openboardview/FileFormats/GenCADFile.h
+index 1ccf8df..c57f7ff 100644
+--- a/src/openboardview/FileFormats/GenCADFile.h
++++ b/src/openboardview/FileFormats/GenCADFile.h
+@@ -5,7 +5,7 @@
+
+ #include "build-generated/GenCADFileGrammar.h"
+
+-#include "mpc/mpc.h"
++#include "mpc.h"
+
+ #include <map>
+ #include <string>
diff --git a/gnu/packages/patches/openboardview-use-system-utf8.patch b/gnu/packages/patches/openboardview-use-system-utf8.patch
deleted file mode 100644
index 25b5952bda..0000000000
--- a/gnu/packages/patches/openboardview-use-system-utf8.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 251e23422f37c93a3f460fb660c5e5bfa8200d91 Mon Sep 17 00:00:00 2001
-From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
-Date: Sun, 2 Dec 2018 16:40:39 -0500
-Subject: [PATCH] build system: Allow using utf8.h from the system.
-
----
- src/CMakeLists.txt | 12 ++++++++----
- src/openboardview/CMakeLists.txt | 1 +
- 2 files changed, 9 insertions(+), 4 deletions(-)
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 90442ed..26d4a69 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -8,10 +8,14 @@ if(NOT WIN32 OR MINGW)
- endif()
-
- ## utf8.h ##
--execute_process(
-- COMMAND git submodule update --init src/utf8
-- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
--)
-+FIND_PATH(UTF8_INCLUDE_DIR utf8.h)
-+if(NOT UTF8_INCLUDE_DIR)
-+ execute_process(
-+ COMMAND git submodule update --init src/utf8
-+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
-+ )
-+ set(UTF8_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/utf8)
-+endif()
-
- ## zlib ##
- find_package(ZLIB)
-diff --git a/src/openboardview/CMakeLists.txt b/src/openboardview/CMakeLists.txt
-index b0bdbe3..6c4564c 100644
---- a/src/openboardview/CMakeLists.txt
-+++ b/src/openboardview/CMakeLists.txt
-@@ -44,6 +44,7 @@ include_directories(
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/..
- ${IMGUI_INCLUDE_DIRS}
-+ ${UTF8_INCLUDE_DIR}
- ${GLAD_INCLUDE_DIRS}
- ${GTK_INCLUDE_DIRS}
- ${OPENGL_INCLUDE_DIR}
---
-2.34.0
-
diff --git a/gnu/packages/patches/orangeduck-mpc-fix-pkg-config.patch b/gnu/packages/patches/orangeduck-mpc-fix-pkg-config.patch
new file mode 100644
index 0000000000..f6155517d1
--- /dev/null
+++ b/gnu/packages/patches/orangeduck-mpc-fix-pkg-config.patch
@@ -0,0 +1,25 @@
+Upstream status: https://github.com/orangeduck/mpc/pull/160
+
+diff --git a/Makefile b/Makefile
+index 7719acc..fe798c5 100644
+--- a/Makefile
++++ b/Makefile
+@@ -15,7 +15,7 @@ EXAMPLESEXE = $(EXAMPLES:.c=)
+
+ .PHONY: all check clean libs $(DIST)/$(PROJ).pc
+
+-all: $(EXAMPLESEXE) check
++all: $(EXAMPLESEXE) check libs $(DIST)/$(PROJ).pc
+
+ $(DIST):
+ $(MKDIR) $(DIST)
+@@ -65,7 +65,8 @@ install: all
+ install -m755 -t $(DESTDIR)$(PREFIX)/lib $(DIST)/lib*
+ install -m644 -t $(DESTDIR)$(PREFIX)/share/$(PROJ) $(PROJ).c $(PROJ).h
+ install -m644 $(PROJ).h $(DESTDIR)$(PREFIX)/include/$(PROJ).h
+- install -m644 $(PROJ).pc $(DESTDIR)$(PREFIX)/lib/pkgconfig/$(PROJ).pc
++ install -m644 $(DIST)/$(PROJ).pc \
++ $(DESTDIR)$(PREFIX)/lib/pkgconfig/$(PROJ).pc
+
+ uninstall:
+ rm -rf -- \
diff --git a/gnu/packages/patches/python-afdko-suppress-copyright-test.patch b/gnu/packages/patches/python-afdko-suppress-copyright-test.patch
deleted file mode 100644
index 94cd73d5f7..0000000000
--- a/gnu/packages/patches/python-afdko-suppress-copyright-test.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Supress copyright check in tests which can differ based on current year.
-
- https://github.com/adobe-type-tools/afdko/issues/1589
-
-Adapted from upstream:
-
- https://github.com/adobe-type-tools/afdko/commit/feebd77d9b6507a0b32f837535511be3c94d9c6f
-
-diff --git a/tests/tx_test.py b/tests/tx_test.py
---- a/tests/tx_test.py
-+++ b/tests/tx_test.py
-@@ -1246,7 +1246,7 @@ def test_ufo_fontinfo_parsing(file, msg, ret_code):
- if (ret_code == 0):
- expected_path = generate_ps_dump(expected_path)
- output_path = generate_ps_dump(output_path)
-- assert differ([expected_path, output_path])
-+ assert differ([expected_path, output_path, '-s'] + PFA_SKIP)
- else:
- arg = [TOOL, '-t1', '-f', ufo_input_path]
- assert subprocess.call(arg) == 6
diff --git a/gnu/packages/patches/python2-pyopenssl-openssl-compat.patch b/gnu/packages/patches/python2-pyopenssl-openssl-compat.patch
deleted file mode 100644
index a185f4172d..0000000000
--- a/gnu/packages/patches/python2-pyopenssl-openssl-compat.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-Adjust for OpenSSL 1.1.1:
-
- https://github.com/pyca/pyopenssl/issues/1043
-
-Taken from upstream:
-
- https://github.com/pyca/pyopenssl/commit/cc5c00ae5fd3c19d07fff79b5c4a08f5e58697ad
-
-diff --git a/src/OpenSSL/SSL.py b/src/OpenSSL/SSL.py
-index 59f21cec..fcdee047 100644
---- a/src/OpenSSL/SSL.py
-+++ b/src/OpenSSL/SSL.py
-@@ -1421,6 +1421,12 @@ def set_alpn_protos(self, protos):
- This list should be a Python list of bytestrings representing the
- protocols to offer, e.g. ``[b'http/1.1', b'spdy/2']``.
- """
-+ # Different versions of OpenSSL are inconsistent about how they handle empty
-+ # proto lists (see #1043), so we avoid the problem entirely by rejecting them
-+ # ourselves.
-+ if not protos:
-+ raise ValueError("at least one protocol must be specified")
-+
- # Take the list of protocols and join them together, prefixing them
- # with their lengths.
- protostr = b"".join(
-@@ -2449,6 +2455,12 @@ def set_alpn_protos(self, protos):
- This list should be a Python list of bytestrings representing the
- protocols to offer, e.g. ``[b'http/1.1', b'spdy/2']``.
- """
-+ # Different versions of OpenSSL are inconsistent about how they handle empty
-+ # proto lists (see #1043), so we avoid the problem entirely by rejecting them
-+ # ourselves.
-+ if not protos:
-+ raise ValueError("at least one protocol must be specified")
-+
- # Take the list of protocols and join them together, prefixing them
- # with their lengths.
- protostr = b"".join(
-diff --git a/tests/test_ssl.py b/tests/test_ssl.py
-index ffc505d8..ca363b45 100644
---- a/tests/test_ssl.py
-+++ b/tests/test_ssl.py
-@@ -1928,7 +1928,7 @@ def test_alpn_call_failure(self):
- protocols list. Ensure that we produce a user-visible error.
- """
- context = Context(SSLv23_METHOD)
-- with pytest.raises(Error):
-+ with pytest.raises(ValueError):
- context.set_alpn_protos([])
-
- def test_alpn_set_on_connection(self):
diff --git a/gnu/packages/patches/ruby-hiredis-use-system-hiredis.patch b/gnu/packages/patches/ruby-hiredis-use-system-hiredis.patch
new file mode 100644
index 0000000000..1b238f5099
--- /dev/null
+++ b/gnu/packages/patches/ruby-hiredis-use-system-hiredis.patch
@@ -0,0 +1,52 @@
+Retrieved 2023-03-05 from
+https://sources.debian.org/data/main/r/ruby-hiredis/0.6.3-2/debian/patches/use_system_libhiredis.patch.
+
+From: Apollon Oikonomopoulos <apoikos@gmail.com>
+Date: Mon, 20 Jan 2020 09:28:45 -0300
+Subject: Use system libhiredis
+
+Last-Update: 2013-04-10
+Forwarded: no
+
+Use Debian's libhiredis version instead of downloading one and statically
+linking against it.
+---
+ ext/hiredis_ext/extconf.rb | 18 +++---------------
+ 1 file changed, 3 insertions(+), 15 deletions(-)
+
+diff --git a/ext/hiredis_ext/extconf.rb b/ext/hiredis_ext/extconf.rb
+index da39eb5..ffa3abf 100644
+--- a/ext/hiredis_ext/extconf.rb
++++ b/ext/hiredis_ext/extconf.rb
+@@ -9,12 +9,6 @@ end
+
+ RbConfig::MAKEFILE_CONFIG['CC'] = ENV['CC'] if ENV['CC']
+
+-hiredis_dir = File.join(File.dirname(__FILE__), %w{.. .. vendor hiredis})
+-unless File.directory?(hiredis_dir)
+- STDERR.puts "vendor/hiredis missing, please checkout its submodule..."
+- exit 1
+-end
+-
+ RbConfig::CONFIG['configure_args'] =~ /with-make-prog\=(\w+)/
+ make_program = $1 || ENV['make']
+ make_program ||= case RUBY_PLATFORM
+@@ -27,15 +21,9 @@ else
+ end
+
+ if build_hiredis
+- # Make sure hiredis is built...
+- Dir.chdir(hiredis_dir) do
+- success = system("#{make_program} static")
+- raise "Building hiredis failed" if !success
+- end
+-
+- # Statically link to hiredis (mkmf can't do this for us)
+- $CFLAGS << " -I#{hiredis_dir}"
+- $LDFLAGS << " #{hiredis_dir}/libhiredis.a"
++ # Debian: use system hiredis
++ $CFLAGS << " -I/usr/include/hiredis"
++ $LDFLAGS << " -lhiredis"
+
+ have_func("rb_thread_fd_select")
+ create_makefile('hiredis/ext/hiredis_ext')
diff --git a/gnu/packages/patches/rust-openssl-sys-no-vendor.patch b/gnu/packages/patches/rust-openssl-sys-no-vendor.patch
index 3e300ea69e..5872d4cf22 100644
--- a/gnu/packages/patches/rust-openssl-sys-no-vendor.patch
+++ b/gnu/packages/patches/rust-openssl-sys-no-vendor.patch
@@ -1,12 +1,17 @@
-https://sources.debian.org/data/main/r/rust-openssl-sys/0.9.53-1/debian/patches/disable-vendor.patch
-"MIT" licensed according to debian/copyright file
-slightly modified to only change the vendored openssl-src dependency
-
-Starting from rust-openssl-sys@0.9.69 Cargo.toml starts searching for openssl-3.0.
-
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -31,15 +31,12 @@
+--- openssl-sys-0.9.84/Cargo.toml.orig 2023-04-03 09:10:11.979197979 -0400
++++ openssl-sys-0.9.84/Cargo.toml 2023-04-03 12:07:30.285315609 -0400
+@@ -31,10 +31,6 @@
+ [package.metadata.pkg-config]
+ openssl = "1.0.1"
+
+-[dependencies.bssl-sys]
+-version = "0.1.0"
+-optional = true
+-
+ [dependencies.libc]
+ version = "0.2"
+
+@@ -46,16 +42,12 @@
[build-dependencies.cc]
version = "1.0"
@@ -18,9 +23,10 @@ Starting from rust-openssl-sys@0.9.69 Cargo.toml starts searching for openssl-3.
version = "0.3.9"
[features]
- vendored = ["openssl-src"]
-+openssl-src = []
+-unstable_boringssl = ["bssl-sys"]
+-vendored = ["openssl-src"]
++unstable_boringssl = []
++vendored = []
[target."cfg(target_env = \"msvc\")".build-dependencies.vcpkg]
version = "0.2.8"
-
diff --git a/gnu/packages/patches/webkitgtk-libelogind.patch b/gnu/packages/patches/webkitgtk-libelogind.patch
new file mode 100644
index 0000000000..fa1fbc8783
--- /dev/null
+++ b/gnu/packages/patches/webkitgtk-libelogind.patch
@@ -0,0 +1,38 @@
+From 8d46803c09edc2b6d4e35c778a3d2f90e5baad0b Mon Sep 17 00:00:00 2001
+From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
+Date: Sat, 25 Mar 2023 22:55:16 -0400
+Subject: [PATCH] Fallback to elogind when systemd is unavailable at build time
+ https://bugs.webkit.org/show_bug.cgi?id=254475
+
+Reviewed by NOBODY (OOPS!).
+
+The build system supports elogind, but it only considers the
+'libsystemd' library name for the pkg-config lookup and not
+'libelogind'. This change makes the build system fallback to search
+for libelogind when libsystemd was not found.
+
+* Source/cmake/FindJournald.cmake [!PC_SYSTEMD_FOUND]: Search for libelogind.
+---
+ Source/cmake/FindJournald.cmake | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/Source/cmake/FindJournald.cmake b/Source/cmake/FindJournald.cmake
+index 18dd6b50908c..e0dc9ce1d397 100644
+--- a/Source/cmake/FindJournald.cmake
++++ b/Source/cmake/FindJournald.cmake
+@@ -55,6 +55,10 @@ find_package(PkgConfig QUIET)
+
+ # libelogind provides compatible pc and header files
+ pkg_check_modules(PC_SYSTEMD QUIET libsystemd)
++if (NOT PC_SYSTEMD_FOUND)
++ pkg_check_modules(PC_SYSTEMD QUIET libelogind)
++endif ()
++
+ set(Journald_COMPILE_OPTIONS ${PC_SYSTEMD_CFLAGS_OTHER})
+ set(Journald_VERSION ${PC_SYSTEMD_VERSION})
+
+
+base-commit: 43ea8744bc6065aad7ae5988e32d31d253905e5f
+--
+2.39.2
+