[8bd77b5] | 1 | #ifndef __ABAC_I_H__ |
---|
| 2 | #define __ABAC_I_H__ |
---|
| 3 | |
---|
| 4 | #include <credentials/certificates/x509.h> |
---|
| 5 | #include <credentials/certificates/certificate.h> |
---|
| 6 | #include <credentials/certificates/ac.h> |
---|
| 7 | #include <credentials/keys/private_key.h> |
---|
| 8 | |
---|
| 9 | #include "abac.h" |
---|
| 10 | |
---|
[440ba20] | 11 | int abac_condition_set_aspect_ptr(abac_condition_t *ptr, abac_aspect_t *aptr); |
---|
| 12 | int abac_condition_set_aspect_string(abac_condition_t *ptr, char *str); |
---|
| 13 | int abac_condition_set_range_string(abac_condition_t *ptr); |
---|
| 14 | int abac_condition_is_range(abac_condition_t *ptr); |
---|
| 15 | abac_aspect_t *abac_condition_of_aspect(abac_condition_t *ptr); |
---|
| 16 | |
---|
| 17 | void abac_aspect_dump(abac_aspect_t *ptr, char* offset); |
---|
| 18 | abac_term_t *abac_aspect_object_term(abac_aspect_t *ptr); |
---|
| 19 | |
---|
| 20 | void abac_condition_dump(abac_condition_t *ptr, char *offset); |
---|
| 21 | abac_list_t *abac_condition_range_list(abac_condition_t *ptr); |
---|
| 22 | |
---|
| 23 | void abac_term_dump(abac_term_t *ptr, char *offset); |
---|
| 24 | |
---|
[ca72963] | 25 | abac_item_t *abac_item_new(int itype, char *val); |
---|
[440ba20] | 26 | int abac_item_type(abac_item_t *); |
---|
| 27 | char* abac_item_val(abac_item_t *); |
---|
| 28 | void abac_param_dump(abac_param_list_t *ptr, char *offset); |
---|
| 29 | abac_list_t *abac_param_list(abac_param_list_t *ptr); |
---|
| 30 | char* abac_aspect_get_issuer_keytype(abac_aspect_t *ptr); |
---|
| 31 | int abac_aspect_get_issuer_idtype(abac_aspect_t *ptr); |
---|
| 32 | |
---|
[8bd77b5] | 33 | certificate_t *abac_attribute_issuer_cert(abac_attribute_t *ptr); |
---|
| 34 | certificate_t *abac_attribute_cert(abac_attribute_t *ptr); |
---|
| 35 | abac_attribute_t *abac_attribute_new(abac_id_t *issuer, certificate_t *cert, certificate_t *issuer_cert); |
---|
| 36 | abac_id_t *abac_id_new(int idtype,char *keyid, char *cn, certificate_t *cert); |
---|
| 37 | private_key_t *abac_id_privkey(abac_id_t *id); |
---|
| 38 | certificate_t *abac_id_cert(abac_id_t *id); |
---|
| 39 | abac_id_t *abac_id_keyid_new(char *keyid, char *cn, certificate_t *cert); |
---|
| 40 | |
---|
[d037f54] | 41 | char *abac_termtype_string(int i); |
---|
| 42 | char *abac_idtype_string(int); |
---|
| 43 | |
---|
| 44 | extern int ABAC_IN_PROLOG; |
---|
[5110d42] | 45 | extern int ABAC_IN_QUERY; |
---|
[d037f54] | 46 | extern char *prologIt(char*); |
---|
| 47 | |
---|
| 48 | #define PROLOG(BODY) { \ |
---|
| 49 | ABAC_IN_PROLOG++; \ |
---|
| 50 | { BODY } \ |
---|
| 51 | ABAC_IN_PROLOG--; \ |
---|
| 52 | } |
---|
| 53 | |
---|
| 54 | |
---|
[8bd77b5] | 55 | #endif /* __ABAC_I_H__ */ |
---|
| 56 | |
---|