* limitations under the License.
*/
+#include "evmgr.h"
#include "fdev.h"
+#include "jobs.h"
-#include "afb-systemd.h"
+#if WITH_SYSTEMD
+
+#include "systemd.h"
#include "fdev-systemd.h"
struct fdev *afb_fdev_create(int fd)
{
- return fdev_systemd_create(afb_systemd_get_event_loop(), fd);
+ jobs_acquire_event_manager();
+ return fdev_systemd_create(systemd_get_event_loop(), fd);
+}
+
+#endif
+#if WITH_FDEV_EPOLL
+
+#include "evmgr.h"
+#include "fdev-epoll.h"
+
+struct fdev *afb_fdev_create(int fd)
+{
+ struct evmgr *evmgr = jobs_acquire_event_manager();
+ return fdev_epoll_add(evmgr_get_fdev_epoll(evmgr), fd);
}
+
+#endif