[ Cced systemd-devel@ and dev@tizen mailing lists in case someone there would be interested too. ]
Folks, We have recently started experimenting with possibilities of adding kdbus-support to glib's gio. Following patchset is result of our work. Please note this is cleanup of modifications available from Tizen repositories (please see notes for details), rebased on top of glib's master branch - 6f7d8f6294 ("gbacktrace: Print out gdb exec errors correctly"). What we would like to accomplish by this RFC is to gather feedback if our approach for glib modifications is sound for you (we do not know glib code that well). In short: - This patchset adds ability for glib programs to connect to kdbus busses via DBUS_SESSION_BUS_ADDRESS=(kernel|kdbus):/dev/kdbus/0-kdbus/bus - Library modifications are not all, it's required to have service handling org.freedesktop.DBus requests in userspace. Currently we use modified[3] dbus-daemon to for that purpose. - Basic functionality works - sending/receiving messages, signals, name registration, etc. - Last patch contains basic tests accompanied with README, please take a look there too. We will be happy to hear any and all of your comments. Thanks! Notes: ====== This code originates from Tizen[1], and was imported[2] by Ryan Lortie into glib's tizen/kdbus-dev branch. [1] https://review.tizen.org/gerrit/gitweb?p=platform%2Fupstream%2Fglib.git;a=summary git://review.tizen.org/platform/upstream/glib kdbus-dev [2] https://git.gnome.org/browse/glib/log/?h=tizen/kdbus-dev We are the same people that did that work, precisely Lukasz Skalski and Michal Eljasiewicz wrote all the code, I just gave it finishing touches. We think this patchset could replace glibs tizen/kdbus-dev iff you think that it's worth to keep kdbus support code in main repo at all. ;) (At this point in time, that is!) Moreover, we would be more than happy to work directly on that branch, if you find it feasible. kdbus-enabled dbus-daemon is available here: [3] git://review.tizen.org/platform/upstream/dbus kdbus-dev We are aware that in future it will be probably systemd role to provide it (I've seen that Daniel Mack is already working on it). Karol Lewandowski (4): gdbus: Import kdbus interface header gdbus: Add preliminary implementation of kdbus support gdbus: Integrate kdbus into GDBus core gdbus: Add basic kdbus tests configure.ac | 11 + gio/Makefile.am | 4 + gio/gdbusaddress.c | 80 +- gio/gdbusconnection.c | 20 +- gio/gdbusprivate.c | 211 +++- gio/gdbusprivate.h | 8 +- gio/giotypes.h | 33 + gio/gkdbus.c | 1112 +++++++++++++++++++++ gio/gkdbus.h | 113 +++ gio/gkdbusconnection.c | 196 ++++ gio/gkdbusconnection.h | 91 ++ gio/kdbus.h | 436 ++++++++ gio/tests/Makefile.am | 13 + gio/tests/kdbus-test/README | 108 ++ gio/tests/kdbus-test/gdbus-example-kdbus-client.c | 51 + gio/tests/kdbus-test/gdbus-example-kdbus-server.c | 117 +++ 16 files changed, 2572 insertions(+), 32 deletions(-) create mode 100644 gio/gkdbus.c create mode 100644 gio/gkdbus.h create mode 100644 gio/gkdbusconnection.c create mode 100644 gio/gkdbusconnection.h create mode 100644 gio/kdbus.h create mode 100644 gio/tests/kdbus-test/README create mode 100644 gio/tests/kdbus-test/gdbus-example-kdbus-client.c create mode 100644 gio/tests/kdbus-test/gdbus-example-kdbus-server.c -- 1.8.4.rc3 _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel