#ifndef __ABAC_I_H__ #define __ABAC_I_H__ #include #include #include #include #include #include "abac_defines.h" /* used by abac_c */ extern int abac_context_creds_count(abac_context_t *); extern int abac_context_id_creds_count(abac_context_t *); extern void abac_aspect_add_linked_param(abac_aspect_t *ptr, abac_term_t *param); extern void abac_aspect_add_param(abac_aspect_t *ptr, abac_term_t *param); extern char *abac_aspect_aspect_name(abac_aspect_t*); extern int abac_aspect_is_linking(abac_aspect_t *ptr) ; extern int abac_aspect_is_object(abac_aspect_t *ptr); extern int abac_aspect_is_principal(abac_aspect_t *ptr); extern char *abac_aspect_linked_role_name(abac_aspect_t*); extern abac_aspect_t *abac_aspect_linking_new(int, char*,char*, char*); extern abac_aspect_t *abac_aspect_new(int, char*, char*); extern char *abac_aspect_object_name(abac_aspect_t*); extern abac_aspect_t *abac_aspect_object_new(int type, abac_term_t *object); extern char *abac_aspect_principal_name(abac_aspect_t*); extern abac_aspect_t *abac_aspect_principal_new(int, char*); extern abac_aspect_t *abac_aspect_role_principal_create(char*); extern char *abac_aspect_string(abac_aspect_t*); extern char *abac_aspect_typed_string(abac_aspect_t*); extern abac_aspect_t *abac_attribute_head(abac_attribute_t *ptr); extern abac_aspect_t *abac_attribute_tail(abac_attribute_t *ptr); extern abac_aspect_t **abac_attribute_tail_vectorized(abac_attribute_t*); extern int abac_attribute_write_cert(abac_attribute_t*, FILE *out); extern void abac_condition_add_range_boolean_item(abac_condition_t *ptr, char* val); extern void abac_condition_add_range_float_item(abac_condition_t *ptr, int itype, float val); extern void abac_condition_add_range_integer_item(abac_condition_t *ptr, int itype, int val); extern void abac_condition_add_range_string_item(abac_condition_t *ptr, char *val); extern void abac_condition_add_range_time_item(abac_condition_t *ptr, int itype, char* val); extern void abac_condition_add_range_urn_item(abac_condition_t *ptr, char *val); extern abac_condition_t *abac_condition_create(char*); extern abac_condition_t *abac_condition_create_from_aspect(abac_aspect_t*); extern char *abac_condition_string(abac_condition_t*); extern char *abac_condition_typed_string(abac_condition_t*); extern abac_id_credential_t *abac_context_id_credential_lookup(abac_context_t *ctx, char *); extern int abac_context_load_attribute_attribute(abac_context_t *ctx, abac_attribute_t *ptr); extern int abac_context_load_id_enc_id_file_key_file(abac_context_t *ctx, char *filename, char *keyfilename, char *pfile); extern int abac_context_load_id_enc_idkey_file(abac_context_t *ctx, char *filename, char *pfile); extern int abac_context_load_id(abac_context_t *ctx, abac_id_t *id); extern int abac_context_load_id_id_key_files(abac_context_t *ctx, char *filename, char *keyfilename); extern int abac_context_load_id_idkey_file(abac_context_t *ctx, char *filename); extern int abac_id_load_enc_privkey_file(abac_id_t *ptr, char *keyfile, char *pfile); extern void abac_id_write_cert(abac_id_t *id, FILE *out); extern int abac_id_write_privkey(abac_id_t *id, FILE *out); extern abac_term_t **abac_param_list_vectorize(abac_param_list_t*); extern abac_param_list_t *abac_aspect_aspect_params(abac_aspect_t *); extern abac_param_list_t *abac_aspect_linked_role_params(abac_aspect_t *); extern abac_param_list_t *abac_aspect_aspect_params(abac_aspect_t *); #endif /* __ABAC_I_H__ */