unknown method AddMatch

Olivier Andrieu oliv__a at users.sourceforge.net
Sun Aug 8 14:16:59 PDT 2004


 Colin Walters [Sun, 08 Aug 2004]:
 > Hi,
 > 
 > I'm getting this now when I run dbus-monitor --session:
 > 
 > walters at nexus> dbus-monitor --session
 > signal interface=org.freedesktop.DBus; member=ServiceAcquired; sender=org.freedesktop.DBus
 > string::1.3
 > method call interface=org.freedesktop.DBus; member=AddMatch; sender=:1.3
 > string:type='method_call'
 > method call interface=org.freedesktop.DBus; member=AddMatch; sender=:1.3
 > string:type='method_return'
 > method call interface=org.freedesktop.DBus; member=AddMatch; sender=:1.3
 > string:type='error'
 > error name=org.freedesktop.DBus.Error.UnknownMethod; sender=:1.3
 > string:Method "AddMatch" on interface "org.freedesktop.DBus" doesn't exist
 >  
 > error name=org.freedesktop.DBus.Error.UnknownMethod; sender=:1.3
 > string:Method "AddMatch" on interface "org.freedesktop.DBus" doesn't exist
 >  
 > error name=org.freedesktop.DBus.Error.UnknownMethod; sender=:1.3
 > string:Method "AddMatch" on interface "org.freedesktop.DBus" doesn't exist
 > 
 > 
 > It's pretty bizarre because as far as I can tell, the daemon is *not*
 > sending back the UnknownMethod reply - instead, the client is
 > synthesizing it.  
 > 
 > I think this is because the dbus-monitor filter function is returning
 > DBUS_HANDLER_RESULT_NOT_YET_HANDLED to the reply, which causes the
 > connection code to think it was an unknown message.

Ah yes, it's a method call, it wasn't filtered and there are no handlers
registered, so dbus_connection_dispatch() generates this error. Maybe
it should check whether the message's destination is the actual
connection and not generate the error in case of eavesdropping.

 > This patch seems to fix it.  I'm not entirely sure if it's the
 > correct fix.

I'd say yes.

-- 
   Olivier


More information about the dbus mailing list