diff options
author | José Bollo <jose.bollo@iot.bzh> | 2016-04-15 16:40:38 +0200 |
---|---|---|
committer | José Bollo <jose.bollo@iot.bzh> | 2016-04-15 16:40:38 +0200 |
commit | 68a8eaafe5f43480f29308bfd2ec12ad54da43f1 (patch) | |
tree | 5c8782a09cb48df20695fa6ba562e00f523d22f3 /src/afb-api-so.c | |
parent | 67966a2f96613d833f493ef3773c442d35f8ed31 (diff) |
use upoll for event loop
also add '#pragma once' in headers
Change-Id: I90cc2d53ec60d4d1e66cf0f229109621e4019864
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'src/afb-api-so.c')
-rw-r--r-- | src/afb-api-so.c | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/afb-api-so.c b/src/afb-api-so.c index 2616e0bc..e31216e0 100644 --- a/src/afb-api-so.c +++ b/src/afb-api-so.c @@ -56,21 +56,15 @@ static int api_timeout = 15; static const char plugin_register_function[] = "pluginRegister"; -static const struct afb_poll_itf upoll_itf = { +static const struct afb_pollitf upollitf = { + .wait = (void*)upoll_wait, + .open = (void*)upoll_open, .on_readable = (void*)upoll_on_readable, .on_writable = (void*)upoll_on_writable, .on_hangup = (void*)upoll_on_hangup, .close = (void*)upoll_close }; -static struct afb_poll itf_poll_open(int fd, void *closure) -{ - struct afb_poll result; - result.data = upoll_open(fd, closure); - result.itf = result.data ? &upoll_itf : NULL; - return result; -} - static void free_context(struct api_so_desc *desc, void *context) { void (*cb)(void*); @@ -198,7 +192,8 @@ int afb_api_so_add_plugin(const char *path) /* init the interface */ desc->interface.verbosity = 0; desc->interface.mode = AFB_MODE_LOCAL; - desc->interface.poll_open = itf_poll_open; + desc->interface.pollitf = &upollitf; + desc->interface.pollclosure = NULL; /* init the plugin */ desc->plugin = pluginRegisterFct(&desc->interface); |