chiark / gitweb /
sd-event: add API to access epoll_fd
authorTom Gundersen <teg@jklm.no>
Fri, 15 Aug 2014 19:04:07 +0000 (21:04 +0200)
committerTom Gundersen <teg@jklm.no>
Wed, 20 Aug 2014 15:24:11 +0000 (17:24 +0200)
This is a prerequisite for integrating sd-event into an external
event loop.

src/libsystemd/libsystemd.sym.m4
src/libsystemd/sd-event/sd-event.c
src/systemd/sd-event.h

index 415d89afbeb5c76a2a5bafcbf6b9c83e90a87537..3fc9983f989aa421d587c04c8e73d05686a85497 100644 (file)
@@ -374,6 +374,7 @@ global:
         sd_event_loop;
         sd_event_exit;
         sd_event_now;
         sd_event_loop;
         sd_event_exit;
         sd_event_now;
+        sd_event_get_fd;
         sd_event_get_state;
         sd_event_get_tid;
         sd_event_get_exit_code;
         sd_event_get_state;
         sd_event_get_tid;
         sd_event_get_exit_code;
index 7917ab934ae4f233732180be5e70c72266cf1224..e062997a80eff7631619c1eebd8dc9a1a4433fa3 100644 (file)
@@ -2361,6 +2361,14 @@ finish:
         return r;
 }
 
         return r;
 }
 
+_public_ int sd_event_get_fd(sd_event *e) {
+
+        assert_return(e, -EINVAL);
+        assert_return(!event_pid_changed(e), -ECHILD);
+
+        return e->epoll_fd;
+}
+
 _public_ int sd_event_get_state(sd_event *e) {
         assert_return(e, -EINVAL);
         assert_return(!event_pid_changed(e), -ECHILD);
 _public_ int sd_event_get_state(sd_event *e) {
         assert_return(e, -EINVAL);
         assert_return(!event_pid_changed(e), -ECHILD);
index 5d9b3be6c7db59c17a209ee2c66296d476eae34e..d96852a76398009fb6fe68b97f53ccfd3821c8b3 100644 (file)
@@ -90,6 +90,7 @@ int sd_event_exit(sd_event *e, int code);
 
 int sd_event_now(sd_event *e, clockid_t clock, uint64_t *usec);
 
 
 int sd_event_now(sd_event *e, clockid_t clock, uint64_t *usec);
 
+int sd_event_get_fd(sd_event *e);
 int sd_event_get_state(sd_event *e);
 int sd_event_get_tid(sd_event *e, pid_t *tid);
 int sd_event_get_exit_code(sd_event *e, int *code);
 int sd_event_get_state(sd_event *e);
 int sd_event_get_tid(sd_event *e, pid_t *tid);
 int sd_event_get_exit_code(sd_event *e, int *code);