summaryrefslogtreecommitdiffstats
path: root/meta/recipes-support/libsoup/libsoup-2.4/CVE-2024-52532-3.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-support/libsoup/libsoup-2.4/CVE-2024-52532-3.patch')
-rw-r--r--meta/recipes-support/libsoup/libsoup-2.4/CVE-2024-52532-3.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/meta/recipes-support/libsoup/libsoup-2.4/CVE-2024-52532-3.patch b/meta/recipes-support/libsoup/libsoup-2.4/CVE-2024-52532-3.patch
new file mode 100644
index 0000000000..edcca86e8c
--- /dev/null
+++ b/meta/recipes-support/libsoup/libsoup-2.4/CVE-2024-52532-3.patch
@@ -0,0 +1,46 @@
1From 4c9e75c6676a37b6485620c332e568e1a3f530ff Mon Sep 17 00:00:00 2001
2From: Simon McVittie <smcv@debian.org>
3Date: Wed, 13 Nov 2024 14:14:23 +0000
4Subject: [PATCH] websocket-test: Disconnect error signal in another place
5
6This is the same change as commit 29b96fab "websocket-test: disconnect
7error copy after the test ends", and is done for the same reason, but
8replicating it into a different function.
9
10Fixes: 6adc0e3e "websocket: process the frame as soon as we read data"
11Resolves: https://gitlab.gnome.org/GNOME/libsoup/-/issues/399
12Signed-off-by: Simon McVittie <smcv@debian.org>
13
14Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/libsoup/-/commit/4c9e75c6676a37b6485620c332e568e1a3f530ff]
15CVE: CVE-2024-52532
16Signed-off-by: Vijay Anusuri <vanusuri@mvista.com>
17---
18 tests/websocket-test.c | 4 +++-
19 1 file changed, 3 insertions(+), 1 deletion(-)
20
21diff --git a/tests/websocket-test.c b/tests/websocket-test.c
22index 6a48c1f9..723f2857 100644
23--- a/tests/websocket-test.c
24+++ b/tests/websocket-test.c
25@@ -1508,8 +1508,9 @@ test_receive_invalid_encode_length_16 (Test *test,
26 GError *error = NULL;
27 InvalidEncodeLengthTest context = { test, NULL };
28 guint i;
29+ guint error_id;
30
31- g_signal_connect (test->client, "error", G_CALLBACK (on_error_copy), &error);
32+ error_id = g_signal_connect (test->client, "error", G_CALLBACK (on_error_copy), &error);
33 g_signal_connect (test->client, "message", G_CALLBACK (on_binary_message), &received);
34
35 /* We use 126(~) as payload length with 125 extended length */
36@@ -1522,6 +1523,7 @@ test_receive_invalid_encode_length_16 (Test *test,
37 WAIT_UNTIL (error != NULL || received != NULL);
38 g_assert_error (error, SOUP_WEBSOCKET_ERROR, SOUP_WEBSOCKET_CLOSE_PROTOCOL_ERROR);
39 g_clear_error (&error);
40+ g_signal_handler_disconnect (test->client, error_id);
41 g_assert_null (received);
42
43 g_thread_join (thread);
44--
45GitLab
46