Bug 99002 - Need libevent integration
Summary: Need libevent integration
Status: RESOLVED NOTOURBUG
Alias: None
Product: dbus
Classification: Unclassified
Component: core (show other bugs)
Version: git master
Hardware: Other All
: medium normal
Assignee: D-Bus Maintainers
QA Contact: D-Bus Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-12-06 03:10 UTC by Philip Prindeville
Modified: 2017-02-01 12:40 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Philip Prindeville 2016-12-06 03:10:58 UTC
Would like to see DBus message handling layered on libevent socket handling.
Comment 1 Simon McVittie 2017-01-16 12:14:12 UTC
You're welcome to write a main-loop integration layer that lets libdbus use libevent.

It would have to work with DBusWatch, DBusTimeout and related objects/functions, similar to:

* the simple (non-thread-safe) internal main-loop in dbus/dbus-loop.[ch]
  and dbus/dbus-socket-set*

* the multiple main-loop integration layers in Avahi

* the GLib main-loop integration layer in dbus-glib

* the Qt main-loop integration layer in QtDBus

* the Enlightenment main-loop integration layer in
  https://git.enlightenment.org/legacy/bindings/python/python-e_dbus.git/

As you can infer from those examples, these main-loop integration layers are usually out-of-tree. There is enough public API to write one.
Comment 2 Simon McVittie 2017-02-01 12:40:44 UTC
I think this is going to be most maintainable if it is done outside the main dbus (reference implementation of D-Bus) source tree, as a semi-independent project. The dbus maintainers are not experts on libevent, and we would get it wrong.

If you are an expert on libevent, then perhaps you could write a suitable integration layer. Please let us know if there is one that should be mentioned on the D-Bus website.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.