]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commitdiff
libsoup: fix CVE-2025-12105
authorChangqing Li <changqing.li@windriver.com>
Wed, 24 Dec 2025 05:00:12 +0000 (13:00 +0800)
committerSteve Sakoman <steve@sakoman.com>
Mon, 29 Dec 2025 17:15:14 +0000 (09:15 -0800)
Refer:
https://gitlab.gnome.org/GNOME/libsoup/-/merge_requests/481

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
meta/recipes-support/libsoup/libsoup-3.4.4/CVE-2025-12105.patch [new file with mode: 0644]
meta/recipes-support/libsoup/libsoup_3.4.4.bb

diff --git a/meta/recipes-support/libsoup/libsoup-3.4.4/CVE-2025-12105.patch b/meta/recipes-support/libsoup/libsoup-3.4.4/CVE-2025-12105.patch
new file mode 100644 (file)
index 0000000..a460554
--- /dev/null
@@ -0,0 +1,34 @@
+From 4cbb31f5bf083442325692ff16559fed73f3a6cf Mon Sep 17 00:00:00 2001
+From: Eugene Mutavchi <Ievgen_Mutavchi@comcast.com>
+Date: Fri, 10 Oct 2025 16:24:27 +0000
+Subject: [PATCH] fix 'heap-use-after-free' caused by 'finishing' queue item
+ twice
+
+CVE: CVE-2025-12105
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/libsoup/-/commit/9ba1243a24e442fa5ec44684617a4480027da960]
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ libsoup/soup-session.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/libsoup/soup-session.c b/libsoup/soup-session.c
+index 9f00b05..649902f 100644
+--- a/libsoup/soup-session.c
++++ b/libsoup/soup-session.c
+@@ -2822,8 +2822,10 @@ run_until_read_done (SoupMessage          *msg,
+               if (soup_message_io_in_progress (msg))
+                       soup_message_io_finished (msg);
+               item->paused = FALSE;
+-              item->state = SOUP_MESSAGE_FINISHING;
+-              soup_session_process_queue_item (item->session, item, FALSE);
++              if (item->state != SOUP_MESSAGE_FINISHED) {
++                      item->state = SOUP_MESSAGE_FINISHING;
++                      soup_session_process_queue_item (item->session, item, FALSE);
++              }
+       }
+       async_send_request_return_result (item, NULL, error);
+ }
+-- 
+2.34.1
+
index f64d0d67459b50d0f501cba240c9c20ec723e29a..c09b06fec23a79b8d052685a72202dab69941ed9 100644 (file)
@@ -45,6 +45,7 @@ SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz \
            file://CVE-2025-4948.patch \
            file://CVE-2025-2784.patch \
            file://CVE-2025-4945.patch \
+           file://CVE-2025-12105.patch \
 "
 SRC_URI[sha256sum] = "291c67725f36ed90ea43efff25064b69c5a2d1981488477c05c481a3b4b0c5aa"