gdbus: Fix match rule for NameOwnerChanged
authorAlban Crequy <alban.crequy@collabora.co.uk>
Tue, 15 Jul 2014 10:29:41 +0000 (11:29 +0100)
committerMarcel Holtmann <marcel@holtmann.org>
Mon, 15 Sep 2014 16:03:46 +0000 (18:03 +0200)
When subscribing to the D-Bus signal NameOwnerChanged from the bus driver,
specify the object path and the sender in the match rule. Otherwise, random
connections on the bus could impersonate the bus driver.

gdbus/watch.c

index 2f5e865..0d0054c 100644 (file)
@@ -703,7 +703,8 @@ guint g_dbus_add_service_watch(DBusConnection *connection, const char *name,
        if (name == NULL)
                return 0;
 
-       data = filter_data_get(connection, service_filter, NULL, NULL,
+       data = filter_data_get(connection, service_filter,
+                               DBUS_SERVICE_DBUS, DBUS_PATH_DBUS,
                                DBUS_INTERFACE_DBUS, "NameOwnerChanged",
                                name);
        if (data == NULL)