mirror of
https://github.com/openwrt/packages.git
synced 2025-12-23 18:54:30 +04:00
Bump glib2 to 2.74.7 which fixes CVE-2023-29499, CVE-2023-32611, CVE-2023-32636, CVE-2023-32643, CVE-2023-32665 and on top of that backport CVE-2024-34397 fix from Debian Bookworm glib2 package 2.74.6-2+deb12u2. While at it refresh the patches so they apply cleanly. References: https://security-tracker.debian.org/tracker/source-package/glib2.0 Fixes: CVE-2023-29499, CVE-2023-32611, CVE-2023-32636, CVE-2023-32643, CVE-2023-32665, CVE-2024-34397 Signed-off-by: Petr Štetiar <ynezz@true.cz>
40 lines
1.4 KiB
Diff
40 lines
1.4 KiB
Diff
From: =?utf-8?b?Ik1hcmNvIFRyZXZpc2FuIChUcmV2acOxbyki?= <mail@3v1n0.net>
|
|
Date: Wed, 8 May 2024 22:53:51 +0200
|
|
Subject: gdbusmessage: Clean the cached arg0 when setting the message body
|
|
|
|
We're now caching arg0 but such value is not cleared when a new body is
|
|
set as it's in the connection filter test cases where we've a leak as
|
|
highlighted by both valgrind and leak sanitizer
|
|
|
|
Origin: upstream, 2.80.3, commit:fe89e9f3cb6e0fd0dc2bd8a2d413799e1443cef1
|
|
Bug-Debian: https://bugs.debian.org/1070851
|
|
---
|
|
gio/gdbusmessage.c | 6 +++---
|
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
|
|
|
--- a/gio/gdbusmessage.c
|
|
+++ b/gio/gdbusmessage.c
|
|
@@ -1164,10 +1164,12 @@ g_dbus_message_set_body (GDBusMessage *
|
|
|
|
if (message->body != NULL)
|
|
g_variant_unref (message->body);
|
|
+
|
|
+ g_clear_pointer (&message->arg0_cache, g_variant_unref);
|
|
+
|
|
if (body == NULL)
|
|
{
|
|
message->body = NULL;
|
|
- message->arg0_cache = NULL;
|
|
g_dbus_message_set_signature (message, NULL);
|
|
}
|
|
else
|
|
@@ -1181,8 +1183,6 @@ g_dbus_message_set_body (GDBusMessage *
|
|
if (g_variant_is_of_type (message->body, G_VARIANT_TYPE_TUPLE) &&
|
|
g_variant_n_children (message->body) > 0)
|
|
message->arg0_cache = g_variant_get_child_value (message->body, 0);
|
|
- else
|
|
- message->arg0_cache = NULL;
|
|
|
|
type_string = g_variant_get_type_string (body);
|
|
type_string_len = strlen (type_string);
|