Signal subscriptions dead on upgrade to Ubuntu Raring (13.04)

Kip Warner kip at thevertigo.com
Sat May 11 12:10:16 PDT 2013


On Fri, 2013-05-10 at 15:55 -0700, Thiago Macieira wrote:
> On sexta-feira, 10 de maio de 2013 14.41.51, Kip Warner wrote:
> >         signal sender=:1.313 ->
> >         dest=com.cartesiantheatre.VikingExtractorService serial=5
> >         path=/com/cartesiantheatre/VikingExtractorObject;
> >         interface=com.cartesiantheatre.VikingExtractorInterface;
> >         member=Notification
> >            string "Indexing mission data, please wait..."
> >         
> >         signal sender=:1.313 ->
> >         dest=com.cartesiantheatre.VikingExtractorService serial=6
> >         path=/com/cartesiantheatre/VikingExtractorObject;
> >         interface=com.cartesiantheatre.VikingExtractorInterface;
> >         member=Notification
> 
> These signals have a destination set on them. There's no way that this match 
> rule will work:
> 
>         "type='signal',sender='com.cartesiantheatre.VikingExtractorService',interface='com.cartesiantheatre.VikingExtractorInterface'"
> 
> In order to match, it requires that the sender be the connection that owns the 
> service name "com.cartesiantheatre.VikingExtractorService", which is also the 
> destination name.
> 
> If the program that wants to receive this signal has the name, the rule will 
> not match (unless sender and receiver are the same).
> 
> If :1.313 owns that name, the rule would match. But since the message had a 
> destination specified, only the actual destination can receive it without 
> adding "eavesdrop=true" to the rule.
> 
> The "eavesdrop=true" is a change in behaviour between D-Bus 1.4 and 1.6, 
> clarifying what is eavesdropping and what isn't.

Hey Thiago,

Thanks for your help. I changed the second parameter in the sender's
call to g_dbus_connection_emit_signal, destination_bus_name, to be
NULL. 

It works now and thank you again. I just want to make sure that it is
working for the right reason. If I want the sender to own the bus, emit
the signals, but allow anyone to listen, then those semantics for the
sender are correct, along with the recipient's below?


<https://bazaar.launchpad.net/~avaneya/avaneya/trunk/view/head:/Extras/Viking%20Lander%20Remastered/Launcher/Source/RecoveryPage.py#L103>


-- 
Kip Warner -- Software Engineer
OpenPGP encrypted/signed mail preferred
http://www.thevertigo.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.freedesktop.org/archives/dbus/attachments/20130511/f9a900d6/attachment.pgp>


More information about the dbus mailing list