#ifndef __ABAC_PL_YAP_H__ #define __ABAC_PL_YAP_H__ #include "abac_internal.h" #include "abac_stack.h" #define ABAC_PL_CRED_OK 0 // adding a credential succeeded #define ABAC_PL_CRED_INVALID -1 // the credential was invalid #define ABAC_PL_CRED_DUP -2 // the credential is already present /* export */ extern abac_pl_t *abac_pl_new(abac_context_t *); extern abac_stack_t *abac_pl_query_with_structure(abac_pl_t *pl, abac_aspect_t *head_aspect, abac_aspect_t *tail_aspect); extern abac_stack_t *abac_pl_query_again(abac_pl_t *); extern abac_stack_t *abac_pl_query(abac_pl_t *, char *, char *); extern char *abac_pl_add_range_constraint_clause(char *var, char *tmplist); extern int abac_pl_remove_credential(abac_list_t *clauses); extern void abac_pl_init(); #endif /* __ABAC_PL_YAP_H__ */