From d1e30006b071533ae2d1903251962d2dec452418 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jos=C3=A9=20Bollo?= Date: Mon, 26 Feb 2018 18:56:47 +0100 Subject: [PATCH] afs-supervisor: Remove dependency to systemd MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Change-Id: I74b455f569f9bf1a6e6970163fb50a946875e42d Signed-off-by: José Bollo --- src/afs-supervisor.c | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/src/afs-supervisor.c b/src/afs-supervisor.c index 71a00369..f58a1a05 100644 --- a/src/afs-supervisor.c +++ b/src/afs-supervisor.c @@ -22,33 +22,25 @@ #include #include #include -#include #include #include #include #include -#include -#include - -#include #include #include -#include "afb-systemd.h" -#include "afb-session.h" #include "afb-cred.h" #include "afb-stub-ws.h" #include "afb-api.h" #include "afb-xreq.h" #include "afb-api-so-v2.h" -#include "afb-api-ws.h" #include "afb-apiset.h" #include "afb-fdev.h" -#include "jobs.h" + +#include "fdev.h" #include "verbose.h" #include "wrap-json.h" -#include "process-name.h" #include "afs-supervision.h" #include "afs-supervisor.h" @@ -76,6 +68,7 @@ static struct afb_apiset *empty_apiset; /* supervision socket path */ static const char supervision_socket_path[] = AFS_SURPERVISION_SOCKET; +static struct fdev *supervision_fdev; /* global mutex */ static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; @@ -265,15 +258,14 @@ static void accept_supervision_link(int sock) /* * handle even on server socket */ -static int listening(sd_event_source *src, int fd, uint32_t revents, void *closure) +static void listening(void *closure, uint32_t revents, struct fdev *fdev) { if ((revents & EPOLLIN) != 0) - accept_supervision_link(fd); + accept_supervision_link((int)(intptr_t)closure); if ((revents & EPOLLHUP) != 0) { ERROR("supervision socket closed"); exit(1); } - return 0; } /* @@ -432,13 +424,12 @@ static int init_supervisor() } /* integrate the socket to the loop */ - rc = sd_event_add_io(afb_systemd_get_event_loop(), - NULL, fd, EPOLLIN, - listening, NULL); + supervision_fdev = afb_fdev_create(fd); if (rc < 0) { ERROR("handling socket event isn't possible"); return rc; } + fdev_set_callback(supervision_fdev, listening, (void*)(intptr_t)fd); return 0; } -- 2.16.6