diff options
author | José Bollo <jose.bollo@iot.bzh> | 2017-09-22 09:37:54 +0200 |
---|---|---|
committer | José Bollo <jose.bollo@iot.bzh> | 2017-10-09 14:08:32 +0200 |
commit | be63003e3f1841b43614f0e11b0a291e11f1dad1 (patch) | |
tree | 58bfc359398ccdb3a5976f3204ee17f535f15569 | |
parent | 59d4e6a0654d361de19fbbfa65daf6c1dabd55a0 (diff) |
Provide conversions for afb_event and afb_req
Provision is made here to convert, trivially:
afb_event -> afb_eventid*
afb_req -> afb_request*
The opposite conversions aren't provided to
favor new interfaces.
Change-Id: Ib67c2317f782e2edfd1ba0e49e10b321a3b770a3
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
-rw-r--r-- | include/afb/afb-event.h | 8 | ||||
-rw-r--r-- | include/afb/afb-req.h | 8 | ||||
-rw-r--r-- | src/afb-trace.c | 7 | ||||
-rw-r--r-- | src/afb-xreq.c | 8 |
4 files changed, 25 insertions, 6 deletions
diff --git a/include/afb/afb-event.h b/include/afb/afb-event.h index c3686fdd..2e7f6ab9 100644 --- a/include/afb/afb-event.h +++ b/include/afb/afb-event.h @@ -29,6 +29,14 @@ struct afb_event }; /* + * Converts the 'event' to an afb_eventid. + */ +static inline struct afb_eventid *afb_event_to_eventid(struct afb_event event) +{ + return event.closure; +} + +/* * Checks wether the 'event' is valid or not. * * Returns 0 if not valid or 1 if valid. diff --git a/include/afb/afb-req.h b/include/afb/afb-req.h index 71dd31d1..6f98e900 100644 --- a/include/afb/afb-req.h +++ b/include/afb/afb-req.h @@ -31,6 +31,14 @@ struct afb_req }; /* + * Converts the 'req' to an afb_request. + */ +static inline struct afb_request *afb_req_to_request(struct afb_req req) +{ + return req.closure; +} + +/* * Checks whether the request 'req' is valid or not. * * Returns 0 if not valid or 1 if valid. diff --git a/src/afb-trace.c b/src/afb-trace.c index 2c2bb52b..4869d9a8 100644 --- a/src/afb-trace.c +++ b/src/afb-trace.c @@ -27,7 +27,8 @@ #include <pthread.h> #include <json-c/json.h> -#include <afb/afb-binding-v2.h> +#define AFB_BINDING_VERSION 0 +#include <afb/afb-binding.h> #include "afb-hook.h" #include "afb-cred.h" @@ -1088,6 +1089,7 @@ static struct tag *trace_get_tag(struct afb_trace *trace, const char *name, int */ static struct event *trace_get_event(struct afb_trace *trace, const char *name, int alloc) { + struct afb_event e; struct event *event; /* search the event */ @@ -1098,7 +1100,8 @@ static struct event *trace_get_event(struct afb_trace *trace, const char *name, if (!event && alloc) { event = malloc(sizeof * event); if (event) { - event->evtid = afb_evt_to_evtid(trace->daemon->itf->event_make(trace->daemon->closure, name).closure); + e = afb_daemon_make_event_v1(*trace->daemon, name); + event->evtid = afb_evt_to_evtid(afb_event_to_eventid(e)); if (event->evtid) { event->next = trace->events; trace->events = event; diff --git a/src/afb-xreq.c b/src/afb-xreq.c index ed5f30b0..f9f2324a 100644 --- a/src/afb-xreq.c +++ b/src/afb-xreq.c @@ -424,7 +424,7 @@ static int xreq_session_set_LOA_cb(struct afb_request *closure, unsigned level) static int xreq_subscribe_eventid_cb(struct afb_request *closure, struct afb_eventid *eventid); static int xreq_subscribe_cb(struct afb_request *closure, struct afb_event event) { - return xreq_subscribe_eventid_cb(closure, event.closure); + return xreq_subscribe_eventid_cb(closure, afb_event_to_eventid(event)); } static int xreq_subscribe_eventid_cb(struct afb_request *closure, struct afb_eventid *eventid) @@ -447,7 +447,7 @@ int afb_xreq_subscribe(struct afb_xreq *xreq, struct afb_eventid *eventid) static int xreq_unsubscribe_eventid_cb(struct afb_request *closure, struct afb_eventid *eventid); static int xreq_unsubscribe_cb(struct afb_request *closure, struct afb_event event) { - return xreq_unsubscribe_eventid_cb(closure, event.closure); + return xreq_unsubscribe_eventid_cb(closure, afb_event_to_eventid(event)); } static int xreq_unsubscribe_eventid_cb(struct afb_request *closure, struct afb_eventid *eventid) @@ -642,7 +642,7 @@ static int xreq_hooked_session_set_LOA_cb(struct afb_request *closure, unsigned static int xreq_hooked_subscribe_eventid_cb(struct afb_request *closure, struct afb_eventid *eventid); static int xreq_hooked_subscribe_cb(struct afb_request *closure, struct afb_event event) { - return xreq_hooked_subscribe_eventid_cb(closure, event.closure); + return xreq_hooked_subscribe_eventid_cb(closure, afb_event_to_eventid(event)); } static int xreq_hooked_subscribe_eventid_cb(struct afb_request *closure, struct afb_eventid *eventid) @@ -655,7 +655,7 @@ static int xreq_hooked_subscribe_eventid_cb(struct afb_request *closure, struct static int xreq_hooked_unsubscribe_eventid_cb(struct afb_request *closure, struct afb_eventid *eventid); static int xreq_hooked_unsubscribe_cb(struct afb_request *closure, struct afb_event event) { - return xreq_hooked_unsubscribe_eventid_cb(closure, event.closure); + return xreq_hooked_unsubscribe_eventid_cb(closure, afb_event_to_eventid(event)); } static int xreq_hooked_unsubscribe_eventid_cb(struct afb_request *closure, struct afb_eventid *eventid) |