Systemd/src/libsystemd
Tom Gundersen c45a5a7446 sd-event: split run into prepare/wait/dispatch
This will allow sd-event to be integrated into an external event loop, which
in turn will allow (say) glib-based applications to use our various libraries,
without manually integrating each of them (bus, rtnl, dhcp, ...).

The external event-loop should integrate sd-event int he following way:

Every iteration must start with a call to sd_event_prepare(), which will
return 0 if no event sources are ready to be processed, a positive value if
they are and a negative value on error. sd_event_prepare() may only be called
following sd_event_dispatch(); a call to sd_event_wait() indicating that no
sources are ready to be dispatched; or a failed call to sd_event_dispatch() or
sd_event_wait().

A successful call to sd_event_prepare() indicating that no event sources are
ready to be dispatched must be followed by a call to sd_event_wait(),
which will return 0 if it timed out without event sources being ready to
be processed, a negative value on error and a positive value otherwise.
sd_event_wait() may only be called following a successful call to
sd_event_prepare() indicating that no event sources are ready to be dispatched.

If sd_event_wait() indicates that some events sources are ready to be
dispatched, it must be followed by a call to sd_event_dispatch(). This
is the only time sd_event_dispatch() may be called.
2014-08-25 21:52:36 +02:00
..
sd-bus bus: when terminating our bus-actviated services that exit-on-idle send STOPPING=1 via sd_notify() 2014-08-21 17:24:22 +02:00
sd-daemon libsystemd: make use of our common sockaddr_union everywhere 2014-07-10 21:16:40 +02:00
sd-event sd-event: split run into prepare/wait/dispatch 2014-08-25 21:52:36 +02:00
sd-id128 sd-id128: use new dev_urandom() call 2014-02-19 17:53:50 +01:00
sd-login Always prefer our headers to system headers 2014-07-31 08:56:03 -04:00
sd-network sd-network: add system-wide sd_network_get_domains() API 2014-08-15 16:02:14 +02:00
sd-path build-sys: export sd_path APIs 2014-07-11 03:13:24 +02:00
sd-resolve sd-resolve: scale number of threads by queries currently being processed, rather than number of queries currently referenced 2014-08-12 19:30:18 +02:00
sd-rtnl util: never use ether_ntoa(), since it formats with %x, not %02x, which makes ethernet addresses look funny 2014-08-15 13:19:03 +02:00
sd-utf8 libsystemd: split up into subdirs 2014-01-21 14:41:35 +01:00
.gitignore build-sys: export experimental symbols only with --enable-kdbus 2014-02-19 20:53:18 +01:00
libsystemd.pc.in build-sys: update .pc.in files 2014-01-25 18:55:58 -05:00
libsystemd.sym.m4 sd-event: add API to access epoll_fd 2014-08-20 17:24:11 +02:00
Makefile libsystemd-bus: rename to libsystemd 2014-01-13 18:54:19 +01:00