Using D-BUS with GLib and no dbus-daemon

James Kent James.Kent at
Wed Feb 15 07:16:12 PST 2006

First, an introduction.  My name is Jim Kent.  I work for PalmSource and have been investigating various IPC technologies to use as part of an application framework we're developing.

One thing I've been investigating is using D-BUS with GLib for peer-to-peer communication between processes (i.e. with no dbus-daemon).

I've got code working that sets up the server and client connections using the D-BUS low-level public API calls.  In other words, each process has a DBusConnection*.  The problem I'm having is that in order to call dbus_g_proxy_new_for_peer, I need a DBusGConnection*, not a DBusConnection*.  I've poked around in the source and found the macro DBUS_CONNECTION_TO_G_CONNECTION that does this, so I can make this work, but the macro is not exposed in the installed headers, so its obviously not expected to be used to do this.

Is there some API I've missed that allows me to get a DBusGConnection* for my peer to peer client and server?

If someone has the D-BUS/GLib statemachine sample code modified to work with direct connections between the client and server, that would be ideal.  If not, any help is appreciated.

Jim Kent
james.kent at

More information about the dbus mailing list