chiark / gitweb /
sd-bus: catch up with current kdbus, don't do matches on kdbus monitor connections
authorLennart Poettering <lennart@poettering.net>
Mon, 8 Dec 2014 23:01:36 +0000 (00:01 +0100)
committerLennart Poettering <lennart@poettering.net>
Mon, 8 Dec 2014 23:01:36 +0000 (00:01 +0100)
src/libsystemd/sd-bus/bus-control.c

index 6a9e9b2..261cf0d 100644 (file)
@@ -1180,6 +1180,10 @@ int bus_add_match_internal_kernel(
 
         assert(bus);
 
+        /* Monitor streams don't support matches, make this a NOP */
+        if (bus->hello_flags & KDBUS_HELLO_MONITOR)
+                return 0;
+
         bloom = alloca0(bus->bloom_size);
 
         sz = ALIGN8(offsetof(struct kdbus_cmd_match, items));
@@ -1392,6 +1396,10 @@ int bus_remove_match_internal_kernel(
 
         assert(bus);
 
+        /* Monitor streams don't support matches, make this a NOP */
+        if (bus->hello_flags & KDBUS_HELLO_MONITOR)
+                return 0;
+
         zero(m);
         m.size = offsetof(struct kdbus_cmd_match, items);
         m.cookie = cookie;