[systemd-devel] Compatibility between D-Bus and kdbus

Thiago Macieira thiago at kde.org
Wed Nov 26 11:10:33 PST 2014


On Wednesday 26 November 2014 19:44:46 Lennart Poettering wrote:
> Now, that's the reason why acquirename/releasename need to be
> implemented client side. With that knowledge we can punch holes in the
> other calls too. For example, the GetConnectionUnixProcessID() call
> you brought up: let's now issue a GetConnectionUnixProcessID() async
> first, immediately followed by an AcquireName() for the same name. On
> dbus this will tell you the old owner, and then acquire the name for
> you. On kdbus with an external driver this would be different
> though. While the GetConnecitonUnixProcessID() is queued and waiting
> to be processed the AcquireName() might already have been executed
> (because it needs to be an ioctl as we have shown above), hence you
> would get your own PID returned, not the old one!
> 
> hence, this calls really should be sync local ioctl()s, not half-half...

Ok, thanks. I understand the issue now. Given that and the fact that there are 
legitimate uses for AddMatch, I am in agreement that bindings need to provide 
the interception themselves.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358



More information about the dbus mailing list