X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fafb-api-so-v1.c;h=c77ab72487ea4a123969d1215a83356e85ccdb82;hb=3e3a29fa49ec494800a4aa866d84fba4eaa8261b;hp=c69f29450a8a22fe1741af047539193c71e7fd11;hpb=f2e72e1858d0be1a9cf3c0c4263f0bd81570d0e8;p=src%2Fapp-framework-binder.git diff --git a/src/afb-api-so-v1.c b/src/afb-api-so-v1.c index c69f2945..c77ab724 100644 --- a/src/afb-api-so-v1.c +++ b/src/afb-api-so-v1.c @@ -67,7 +67,8 @@ static void call_cb(void *closure, struct afb_xreq *xreq) const struct afb_verb_desc_v1 *verb; struct api_so_v1 *desc = closure; - verb = search(desc, xreq->verb); + xreq->request.dynapi = (void*)desc->export; /* hack: this avoids to export afb_export structure */ + verb = search(desc, xreq->request.verb); afb_xreq_call_verb_v1(xreq, verb); } @@ -212,7 +213,7 @@ int afb_api_so_v1_add(const char *path, void *handle, struct afb_apiset *apiset) /* allocates the description */ init = dlsym(handle, afb_api_so_v1_service_init); onevent = dlsym(handle, afb_api_so_v1_service_event); - export = afb_export_create_v1(path, init, onevent); + export = afb_export_create_v1(apiset, path, init, onevent); desc = calloc(1, sizeof *desc); if (desc == NULL || export == NULL) { ERROR("out of memory"); @@ -238,7 +239,7 @@ int afb_api_so_v1_add(const char *path, void *handle, struct afb_apiset *apiset) ERROR("binding [%s] bad prefix...", path); goto error; } - if (!afb_api_is_valid_name(desc->binding->v1.prefix)) { + if (!afb_api_is_valid_name(desc->binding->v1.prefix, 1)) { ERROR("binding [%s] invalid prefix...", path); goto error; }