diff options
author | José Bollo <jose.bollo@iot.bzh> | 2017-09-19 12:16:42 +0200 |
---|---|---|
committer | José Bollo <jose.bollo@iot.bzh> | 2017-10-09 14:08:29 +0200 |
commit | 15d0dae1cd6ab982137a7c2848de9303a9c969f0 (patch) | |
tree | ba156b222ae058c8f0120def427f0abf3564190c /src/afb-trace.c | |
parent | 33e615ea0cc26131532f4615ef4a2034488fa48e (diff) |
Add function 'afb_req_get_application_id'
This function is intended to return an identifier of the
calling application. At this time, the identifier is
just derived from the application id but it can be
changed in the future.
Change-Id: Idacde8979ac5bb525352de9cab19e3fc1ed48627
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'src/afb-trace.c')
-rw-r--r-- | src/afb-trace.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/afb-trace.c b/src/afb-trace.c index c581611b..bf8db690 100644 --- a/src/afb-trace.c +++ b/src/afb-trace.c @@ -227,10 +227,13 @@ static struct flag xreq_flags[] = { /* must be sorted by names */ { "extra", afb_hook_flags_req_extra }, { "fail", afb_hook_flag_req_fail }, { "get", afb_hook_flag_req_get }, + { "get_application_id", afb_hook_flag_req_get_application_id }, + { "has_permission", afb_hook_flag_req_has_permission }, { "json", afb_hook_flag_req_json }, { "life", afb_hook_flags_req_life }, { "ref", afb_hook_flags_req_ref }, { "result", afb_hook_flags_req_result }, + { "security", afb_hook_flags_req_security }, { "session", afb_hook_flags_req_session }, { "session_close", afb_hook_flag_req_session_close }, { "session_set_LOA", afb_hook_flag_req_session_set_LOA }, @@ -456,6 +459,19 @@ static void hook_xreq_subcall_req_result(void *closure, const struct afb_hookid "result", result); } +static void hook_xreq_has_permission(void *closure, const struct afb_hookid *hookid, const struct afb_xreq *xreq, const char *permission, int result) +{ + hook_xreq(closure, hookid, xreq, "has_permission", "{ss sb}", + "permission", permission, + "result", result); +} + +static void hook_xreq_get_application_id(void *closure, const struct afb_hookid *hookid, const struct afb_xreq *xreq, char *result) +{ + hook_xreq(closure, hookid, xreq, "get_application_id", "{ss?}", + "result", result); +} + static struct afb_hook_xreq_itf hook_xreq_itf = { .hook_xreq_begin = hook_xreq_begin, .hook_xreq_end = hook_xreq_end, @@ -479,7 +495,9 @@ static struct afb_hook_xreq_itf hook_xreq_itf = { .hook_xreq_store = hook_xreq_store, .hook_xreq_unstore = hook_xreq_unstore, .hook_xreq_subcall_req = hook_xreq_subcall_req, - .hook_xreq_subcall_req_result = hook_xreq_subcall_req_result + .hook_xreq_subcall_req_result = hook_xreq_subcall_req_result, + .hook_xreq_has_permission = hook_xreq_has_permission, + .hook_xreq_get_application_id = hook_xreq_get_application_id }; /*******************************************************************************/ |