Handle receive rule result unavailability and message broadcasts
authorJacek Bukarewicz <j.bukarewicz@samsung.com>
Fri, 28 Nov 2014 11:39:33 +0000 (12:39 +0100)
committerŁukasz Stelmach <l.stelmach@samsung.com>
Thu, 5 Nov 2015 10:59:55 +0000 (11:59 +0100)
commit7fd12742031e57ded2734509eec724ede7c408d2
treeff55b56a265c25dc1ffa03d12d5ddaa24d02ca2e
parenta0d68decab11512daac02e8e1a89cb20fb05bdfa
Handle receive rule result unavailability and message broadcasts

When message is sent to the addressed recipient and receive rule
result is unavailable we don't want to block the sender
as it most likely will be the privileged service, so instead we queue
it at the recipient. Any further messages sent to it will be queued to
maintain message order. Once the answer from Cynara arrives messages are
dispatched from the recipient queue. In such case full dispatch is
performed - messages are sent to addressed recipient and other
interested connections.
Messages sent to non-addressed recipients (eavesdroppers or broadcast
message recipients) are handled in a similar way. The difference is
that it is not full dispatch meaning message is sent to a single recipient.

Change-Id: Iecd5395f75a4c7811fa97247a37d8fc4d42e8814
bus/activation.c
bus/bus.c
bus/bus.h
bus/check.c
bus/check.h
bus/connection.c
bus/connection.h
bus/dispatch.c
bus/dispatch.h
bus/driver.c
bus/policy.c