X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fafb-cred.h;h=82d0aacb5012d8f2c6d977e8e9a5414d06991758;hb=e80c1a7ae27456d546e202b1c498e9337d42ce14;hp=6f8173f663607438d084bb18efd065cbfe39e1bb;hpb=9952955d440866fa061d78fe923cb8282f778667;p=src%2Fapp-framework-binder.git diff --git a/src/afb-cred.h b/src/afb-cred.h index 6f8173f6..82d0aacb 100644 --- a/src/afb-cred.h +++ b/src/afb-cred.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2017 "IoT.bzh" + * Copyright (C) 2017-2019 "IoT.bzh" * Author: José Bollo * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -19,6 +19,8 @@ #include +struct afb_context; + struct afb_cred { int refcount; @@ -28,6 +30,7 @@ struct afb_cred const char *user; const char *label; const char *id; + const char *exported; }; extern struct afb_cred *afb_cred_current(); @@ -36,4 +39,10 @@ extern struct afb_cred *afb_cred_create_for_socket(int fd); extern struct afb_cred *afb_cred_addref(struct afb_cred *cred); extern void afb_cred_unref(struct afb_cred *cred); +extern int afb_cred_has_permission(struct afb_cred *cred, const char *permission, struct afb_context *context); + +extern const char *afb_cred_export(struct afb_cred *cred); +extern struct afb_cred *afb_cred_import(const char *string); + +extern struct afb_cred *afb_cred_mixed_on_behalf_import(struct afb_cred *cred, struct afb_context *context, const char *exported);