From 96ceff428359b8f757d9d4da1f5da13bb9b5ab2e Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 9 Dec 2014 00:01:36 +0100 Subject: [PATCH] sd-bus: catch up with current kdbus, don't do matches on kdbus monitor connections --- src/libsystemd/sd-bus/bus-control.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/libsystemd/sd-bus/bus-control.c b/src/libsystemd/sd-bus/bus-control.c index 6a9e9b296ad..261cf0d0447 100644 --- a/src/libsystemd/sd-bus/bus-control.c +++ b/src/libsystemd/sd-bus/bus-control.c @@ -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;