]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commitdiff
libsoup: fix CVE-2025-12105
authorChangqing Li <changqing.li@windriver.com>
Tue, 23 Dec 2025 07:20:20 +0000 (15:20 +0800)
committerSteve Sakoman <steve@sakoman.com>
Mon, 29 Dec 2025 16:40:22 +0000 (08:40 -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/CVE-2025-12105.patch [new file with mode: 0644]
meta/recipes-support/libsoup/libsoup_3.0.7.bb

diff --git a/meta/recipes-support/libsoup/libsoup/CVE-2025-12105.patch b/meta/recipes-support/libsoup/libsoup/CVE-2025-12105.patch
new file mode 100644 (file)
index 0000000..9426ef3
--- /dev/null
@@ -0,0 +1,34 @@
+From 465410f833e4288ad053b4e18d5fa6c3be3148e1 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 5f2929f..b9f3e42 100644
+--- a/libsoup/soup-session.c
++++ b/libsoup/soup-session.c
+@@ -3093,8 +3093,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, NULL, FALSE);
++              if (item->state != SOUP_MESSAGE_FINISHED) {
++                      item->state = SOUP_MESSAGE_FINISHING;
++                      soup_session_process_queue_item (item->session, item, NULL, FALSE);
++              }
+       }
+       async_send_request_return_result (item, NULL, error);
+ }
+-- 
+2.34.1
+
index af8554aa783159002363ed273b9e61cd7f92dd2b..0f827367270f6a2dc52a76fba7aa45edca74135a 100644 (file)
@@ -45,6 +45,7 @@ SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz \
            file://CVE-2025-46421.patch \
            file://CVE-2025-4948.patch \
            file://CVE-2025-4945.patch \
+           file://CVE-2025-12105.patch \
           "
 SRC_URI[sha256sum] = "ebdf90cf3599c11acbb6818a9d9e3fc9d2c68e56eb829b93962972683e1bf7c8"