#include #include #include int main(int argc, char **argv) { int i, success; abac_credential_t *cred; if (argc < 2) errx(1, "Usage: %s ", argv[0]); libabac_init(); abac_context_t *ctx = abac_context_new(); abac_context_load_directory(ctx, argv[1]); abac_credential_t **credentials = abac_context_query(ctx, "3f1aca4c5911b345d81c5f1a77675dce13249d0c.fed_create", "5839d714b16bbe108642c5eb586c2173420bed19", &success ); if (success) puts("success"); if (credentials != NULL) for (i = 0; credentials[i] != NULL; ++i) { cred = credentials[i]; printf("credential %s <- %s\n", abac_role_string(abac_credential_head(cred)), abac_role_string(abac_credential_tail(cred)) ); } abac_context_query_free(credentials); abac_context_free(ctx); libabac_deinit(); return 0; }