Signal subscriptions dead on upgrade to Ubuntu Raring (13.04)

Simon McVittie simon.mcvittie at collabora.co.uk
Mon May 13 03:46:22 PDT 2013


On 11/05/13 20:10, Kip Warner wrote:
> 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?

Broadcast signals (no/NULL destination) are nearly always correct. Their
semantics are "hey, if anyone cares, something just happened". Think of
them as like email to a mailing list - anyone who is paying attention
can act on them.

Unicast signals (non-NULL destination) are rarely used on D-Bus. If
broadcasts are like a mailing list, unicast signals are like private
email: they are a notification to one specific recipient (and, perhaps
stretching the analogy a bit, it's best to send to the mailing list even
if you are basically only talking to Thiago, to give others like me a
chance to join in :-)

To continue the email analogy, eavesdropping (setting a match rule with
eavesdrop=true) is like your mail-server administrator monitoring your
messages.

This was changed between 1.4 and 1.6 to make eavesdropping's intended
semantics more obvious: in 1.4 and older, it was too easy to eavesdrop
on the session bus without intending to.

    S


More information about the dbus mailing list