X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fafb-api-v3.c;h=1381c18b7d66d1029dfa6ac395dbaa12f9fdbeb0;hb=65353dce81a629e042800bb7b86fcd869a76727e;hp=1fc6ebe44561308acc75d3a456a2505383808fee;hpb=a7859534c72b9e6a187672a9eedb6984c593cabf;p=src%2Fapp-framework-binder.git diff --git a/src/afb-api-v3.c b/src/afb-api-v3.c index 1fc6ebe4..1381c18b 100644 --- a/src/afb-api-v3.c +++ b/src/afb-api-v3.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2016, 2017, 2018 "IoT.bzh" + * Copyright (C) 2015-2020 "IoT.bzh" * Author José Bollo * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -44,7 +44,9 @@ struct afb_api_v3 { int refcount; int count; struct afb_verb_v3 **verbs; +#if WITH_LEGACY_BINDING_V2 const struct afb_verb_v2 *verbsv2; +#endif const struct afb_verb_v3 *verbsv3; struct afb_export *export; const char *info; @@ -77,7 +79,9 @@ static struct afb_verb_v3 *search_dynamic_verb(struct afb_api_v3 *api, const cha void afb_api_v3_process_call(struct afb_api_v3 *api, struct afb_xreq *xreq) { const struct afb_verb_v3 *verbsv3; +#if WITH_LEGACY_BINDING_V2 const struct afb_verb_v2 *verbsv2; +#endif const char *name; name = xreq->request.called_verb; @@ -104,6 +108,7 @@ void afb_api_v3_process_call(struct afb_api_v3 *api, struct afb_xreq *xreq) return; } +#if WITH_LEGACY_BINDING_V2 /* look in legacy set */ verbsv2 = api->verbsv2; if (verbsv2) { @@ -116,7 +121,7 @@ void afb_api_v3_process_call(struct afb_api_v3 *api, struct afb_xreq *xreq) } } } - +#endif afb_xreq_reply_unknown_verb(xreq); } @@ -129,7 +134,7 @@ static struct json_object *describe_verb_v3(const struct afb_verb_v3 *verb) g = json_object_new_object(); json_object_object_add(f, "get", g); - a = afb_auth_json_v2(verb->auth, verb->session); + a = afb_auth_json_x2(verb->auth, verb->session); if (a) json_object_object_add(g, "x-permissions", a); @@ -252,12 +257,14 @@ struct afb_export *afb_api_v3_export(struct afb_api_v3 *api) return api->export; } +#if WITH_LEGACY_BINDING_V2 void afb_api_v3_set_verbs_v2( struct afb_api_v3 *api, const struct afb_verb_v2 *verbs) { api->verbsv2 = verbs; } +#endif void afb_api_v3_set_verbs_v3( struct afb_api_v3 *api, @@ -358,7 +365,7 @@ int afb_api_v3_set_binding_fields(const struct afb_binding_v3 *desc, struct afb_ if (!rc && desc->require_class) rc = afb_api_x3_require_class(api, desc->require_class); if (!rc && desc->require_api) - rc = afb_api_x3_require_api(api, desc->require_api, 1); + rc = afb_api_x3_require_api(api, desc->require_api, 0); return rc; }