diff options
author | Radoslaw Pajak <r.pajak@samsung.com> | 2013-12-17 09:35:06 +0100 |
---|---|---|
committer | Lubomir Rintel <lkundrak@v3.sk> | 2015-02-11 11:55:30 +0100 |
commit | 79da6c2604cac847e92c2d758a963c3bef03087a (patch) | |
tree | 4b925406443ddfa7eb91bedb6c0814b38c229380 | |
parent | 83d8d6d07ddb9571e681a71bd4c2a9bc4ccd1cf3 (diff) |
[daemon-fix] Fixed sending daemon match rules for kdbus broadcasts
Change-Id: I4871ee626c71a26dac6437d05b5b543a6cf043de
Signed-off-by: Radoslaw Pajak <r.pajak@samsung.com>
-rw-r--r-- | bus/bus.c | 2 | ||||
-rw-r--r-- | bus/kdbus-d.c | 8 |
2 files changed, 4 insertions, 6 deletions
@@ -1041,7 +1041,7 @@ bus_context_new (const DBusString *config_file, _dbus_verbose ("Registering org.freedesktop.DBus name for daemon failed!\n"); goto failed; } - if(!register_kdbus_starters(context->myKdbusConnection)) //TODO repair in kdbus + if(!register_kdbus_starters(context->myKdbusConnection)) { _dbus_verbose ("Registering kdbus starters for dbus activatable names failed!\n"); goto failed; diff --git a/bus/kdbus-d.c b/bus/kdbus-d.c index 442650a9..86d712b8 100644 --- a/bus/kdbus-d.c +++ b/bus/kdbus-d.c @@ -423,7 +423,6 @@ static dbus_bool_t add_matches_for_kdbus_broadcasts(DBusConnection* connection) uint64_t size; int fd; DBusTransport *transport; - const char* unique_name; transport = dbus_connection_get_transport(connection); @@ -443,14 +442,12 @@ static dbus_bool_t add_matches_for_kdbus_broadcasts(DBusConnection* connection) return FALSE; } - unique_name = dbus_bus_get_unique_name(connection); - - pCmd_match->id = strtoull(&unique_name[3], NULL, 10); + pCmd_match->id = 0; pCmd_match->cookie = 1; pCmd_match->size = size; + pCmd_match->src_id = KDBUS_MATCH_SRC_ID_ANY; pItem = pCmd_match->items; - pCmd_match->src_id = 0; pItem->type = KDBUS_MATCH_NAME_CHANGE; pItem->size = KDBUS_PART_HEADER_SIZE + 1; pItem = KDBUS_PART_NEXT(pItem); @@ -462,6 +459,7 @@ static dbus_bool_t add_matches_for_kdbus_broadcasts(DBusConnection* connection) pItem = KDBUS_PART_NEXT(pItem); pItem->type = KDBUS_MATCH_ID_ADD; pItem->size = KDBUS_PART_HEADER_SIZE + sizeof(__u64); + pItem->id = KDBUS_MATCH_SRC_ID_ANY; pItem = KDBUS_PART_NEXT(pItem); pItem->type = KDBUS_MATCH_ID_REMOVE; pItem->size = KDBUS_PART_HEADER_SIZE + sizeof(__u64); |