summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRadoslaw Pajak <r.pajak@samsung.com>2013-12-17 09:35:06 +0100
committerLubomir Rintel <lkundrak@v3.sk>2015-02-11 11:55:30 +0100
commit79da6c2604cac847e92c2d758a963c3bef03087a (patch)
tree4b925406443ddfa7eb91bedb6c0814b38c229380
parent83d8d6d07ddb9571e681a71bd4c2a9bc4ccd1cf3 (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.c2
-rw-r--r--bus/kdbus-d.c8
2 files changed, 4 insertions, 6 deletions
diff --git a/bus/bus.c b/bus/bus.c
index 872e4595..504ab0ea 100644
--- a/bus/bus.c
+++ b/bus/bus.c
@@ -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);