From c5b8ca331b22cc49e2cdf9f0750f930d1686cf3b Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Fri, 3 Jul 2015 13:50:04 +0100 Subject: [PATCH 1/2] dbus-monitor: disable automatic handling of o.fd.Peer messages A normal DBusConnection will automatically reply to o.fd.Peer messages such as Ping. We don't want this: if we are using traditional eavesdropping with an older dbus-daemon, we'll confuse everyone else by replying to messages that weren't intended for us. If we are using the new Monitoring interface (since 1.9.12), the same still applies, but in addition, the dbus-daemon will disconnect us for not being a well-behaved monitor. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=90952 Signed-off-by: Simon McVittie --- tools/dbus-monitor.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/dbus-monitor.c b/tools/dbus-monitor.c index 9cec0a7..483d42e 100644 --- a/tools/dbus-monitor.c +++ b/tools/dbus-monitor.c @@ -483,6 +483,11 @@ main (int argc, char *argv[]) exit (1); } + /* Receive o.fd.Peer messages as normal messages, rather than having + * libdbus handle them internally, which is the wrong thing for + * a monitor */ + dbus_connection_set_route_peer_messages (connection, TRUE); + if (!dbus_connection_add_filter (connection, filter_func, _DBUS_INT_TO_POINTER (binary_mode), NULL)) { -- 2.1.4