summaryrefslogtreecommitdiff
path: root/meta/packages/dbus/dbus-1.1.2/fix-validate.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/packages/dbus/dbus-1.1.2/fix-validate.patch')
-rw-r--r--meta/packages/dbus/dbus-1.1.2/fix-validate.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/meta/packages/dbus/dbus-1.1.2/fix-validate.patch b/meta/packages/dbus/dbus-1.1.2/fix-validate.patch
new file mode 100644
index 000000000..3bfddca60
--- /dev/null
+++ b/meta/packages/dbus/dbus-1.1.2/fix-validate.patch
@@ -0,0 +1,49 @@
+commit ae4a1586969aaca534508837830d7d3de4ade070
+Author: Havoc Pennington <hp@redhat.com>
+Date: Mon Jul 30 16:16:47 2007 +0000
+
+ 2007-07-30 Havoc Pennington <hp@redhat.com>
+
+ * bus/activation-helper.c (check_bus_name): don't use
+ _dbus_check_valid_bus_name() which is only around with
+ --enable-checks, instead use _dbus_validate_bus_name().
+ Bug #11766 from Diego <diego@pemas.net>
+
+diff --git a/bus/activation-helper.c b/bus/activation-helper.c
+index 1636660..36006a4 100644
+--- a/bus/activation-helper.c
++++ b/bus/activation-helper.c
+@@ -381,14 +381,20 @@ exec_for_correct_user (char *exec, char *user, DBusError *error)
+ }
+
+ static dbus_bool_t
+-check_bus_name (const char *bus_name, DBusError *error)
++check_bus_name (const char *bus_name,
++ DBusError *error)
+ {
+- if (!_dbus_check_is_valid_bus_name (bus_name))
++ DBusString str;
++
++ _dbus_string_init_const (&str, bus_name);
++ if (!_dbus_validate_bus_name (&str, 0, _dbus_string_get_length (&str)))
+ {
+ dbus_set_error (error, DBUS_ERROR_SPAWN_SERVICE_NOT_FOUND,
+- "bus name '%s' not found\n", bus_name);
++ "bus name '%s' is not a valid bus name\n",
++ bus_name);
+ return FALSE;
+ }
++
+ return TRUE;
+ }
+
+@@ -517,7 +523,8 @@ check_dbus_user (BusConfigParser *parser, DBusError *error)
+ }
+
+ dbus_bool_t
+-run_launch_helper (const char *bus_name, DBusError *error)
++run_launch_helper (const char *bus_name,
++ DBusError *error)
+ {
+ BusConfigParser *parser;
+ dbus_bool_t retval;