From: José Bollo Date: Fri, 5 May 2017 16:57:04 +0000 (+0200) Subject: Expose session UUID from context X-Git-Tag: dab_3.99.1~12 X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=commitdiff_plain;h=febbd43b65c6b0d480b076ead8a078979b8b3603;p=src%2Fapp-framework-binder.git Expose session UUID from context Change-Id: Ifcf08e840b4ac92889874700c630495b6dfc3e66 Signed-off-by: José Bollo --- diff --git a/src/afb-context.c b/src/afb-context.c index 16dcd046..81f21ff4 100644 --- a/src/afb-context.c +++ b/src/afb-context.c @@ -51,8 +51,11 @@ void afb_context_init(struct afb_context *context, struct afb_session *session, void afb_context_subinit(struct afb_context *context, struct afb_context *super) { - *context = *super; + context->session = super->session; + context->flags = 0; context->super = super; + context->api_key = NULL; + context->validated = super->validated; } int afb_context_connect(struct afb_context *context, const char *uuid, const char *token) @@ -101,6 +104,11 @@ const char *afb_context_sent_token(struct afb_context *context) return afb_session_token(context->session); } +const char *afb_context_uuid(struct afb_context *context) +{ + return context->session ? afb_session_uuid(context->session) : ""; +} + const char *afb_context_sent_uuid(struct afb_context *context) { if (context->session == NULL || context->closing || context->super) diff --git a/src/afb-context.h b/src/afb-context.h index 5f007f9c..f1af3622 100644 --- a/src/afb-context.h +++ b/src/afb-context.h @@ -22,6 +22,8 @@ struct afb_session; struct afb_context { struct afb_session *session; + void *api_key; + struct afb_context *super; union { unsigned flags; struct { @@ -34,8 +36,6 @@ struct afb_context unsigned closed: 1; }; }; - void *api_key; - struct afb_context *super; }; extern void afb_context_init(struct afb_context *context, struct afb_session *session, const char *token); @@ -44,6 +44,7 @@ extern int afb_context_connect(struct afb_context *context, const char *uuid, co extern void afb_context_disconnect(struct afb_context *context); extern const char *afb_context_sent_token(struct afb_context *context); extern const char *afb_context_sent_uuid(struct afb_context *context); +extern const char *afb_context_uuid(struct afb_context *context); extern void *afb_context_get(struct afb_context *context); extern int afb_context_set(struct afb_context *context, void *value, void (*free_value)(void*));