X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fafb-stub-ws.c;h=2a48745bb013579a552cd44c0c9bb42387402fa5;hb=eaf5670e9d10b5d7c066043e7563706cf1e01bd5;hp=3c28871cdcc6836ea45cb1e0682415e654cab3d5;hpb=60cd11786766ebc148b7ec088962dd6e112f8762;p=src%2Fapp-framework-binder.git diff --git a/src/afb-stub-ws.c b/src/afb-stub-ws.c index 3c28871c..2a48745b 100644 --- a/src/afb-stub-ws.c +++ b/src/afb-stub-ws.c @@ -316,7 +316,7 @@ static struct json_object *client_api_describe_cb(void * closure) /******************* server part: manage events **********************************/ -static void server_event_add_cb(void *closure, const char *event, int eventid) +static void server_event_add_cb(void *closure, const char *event, uint16_t eventid) { struct afb_stub_ws *stubws = closure; @@ -324,7 +324,7 @@ static void server_event_add_cb(void *closure, const char *event, int eventid) afb_proto_ws_server_event_create(stubws->proto, event, eventid); } -static void server_event_remove_cb(void *closure, const char *event, int eventid) +static void server_event_remove_cb(void *closure, const char *event, uint16_t eventid) { struct afb_stub_ws *stubws = closure; @@ -332,7 +332,7 @@ static void server_event_remove_cb(void *closure, const char *event, int eventid afb_proto_ws_server_event_remove(stubws->proto, event, eventid); } -static void server_event_push_cb(void *closure, const char *event, int eventid, struct json_object *object) +static void server_event_push_cb(void *closure, const char *event, uint16_t eventid, struct json_object *object) { struct afb_stub_ws *stubws = closure; @@ -341,12 +341,12 @@ static void server_event_push_cb(void *closure, const char *event, int eventid, json_object_put(object); } -static void server_event_broadcast_cb(void *closure, const char *event, int eventid, struct json_object *object) +static void server_event_broadcast_cb(void *closure, const char *event, struct json_object *object, const uuid_binary_t uuid, uint8_t hop) { struct afb_stub_ws *stubws = closure; if (stubws->proto != NULL) - afb_proto_ws_server_event_broadcast(stubws->proto, event, object); + afb_proto_ws_server_event_broadcast(stubws->proto, event, object, uuid, hop); json_object_put(object); } @@ -457,9 +457,9 @@ static void client_on_event_push_cb(void *closure, const char *event_name, int e ERROR("unreadable push event"); } -static void client_on_event_broadcast_cb(void *closure, const char *event_name, struct json_object *data) +static void client_on_event_broadcast_cb(void *closure, const char *event_name, struct json_object *data, const uuid_binary_t uuid, uint8_t hop) { - afb_evt_broadcast(event_name, data); + afb_evt_rebroadcast(event_name, data, uuid, hop); } /*****************************************************/ @@ -523,15 +523,14 @@ static void server_on_call_cb(void *closure, struct afb_proto_ws_call *call, con wreq->call = call; /* init the context */ - if (afb_context_connect(&wreq->xreq.context, sessionid, NULL) < 0) + if (afb_context_connect_validated(&wreq->xreq.context, sessionid) < 0) goto unconnected; - wreq->xreq.context.validated = 1; server_record_session(stubws, wreq->xreq.context.session); if (wreq->xreq.context.created) afb_session_set_autoclose(wreq->xreq.context.session, 1); /* makes the call */ - wreq->xreq.cred = afb_cred_mixed_on_behalf_import(stubws->cred, sessionid, user_creds); + wreq->xreq.cred = afb_cred_mixed_on_behalf_import(stubws->cred, &wreq->xreq.context, user_creds); wreq->xreq.request.called_api = stubws->apiname; wreq->xreq.request.called_verb = verb; wreq->xreq.json = args; @@ -649,7 +648,7 @@ static void on_hangup(void *closure) static int enqueue_processing(struct afb_proto_ws *proto, void (*callback)(int signum, void* arg), void *arg) { - return jobs_queue(NULL /* proto */, 0, callback, arg); + return jobs_queue(proto, 0, callback, arg); } /*****************************************************/