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 | |
---|
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 | |
---|
25 | abac_item_t *abac_item_new(char *itype, char *val); |
---|
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 | |
---|
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 | |
---|
41 | char *abac_termtype_string(int i); |
---|
42 | char *abac_idtype_string(int); |
---|
43 | |
---|
44 | extern int ABAC_IN_PROLOG; |
---|
45 | extern char *prologIt(char*); |
---|
46 | |
---|
47 | #define PROLOG(BODY) { \ |
---|
48 | ABAC_IN_PROLOG++; \ |
---|
49 | { BODY } \ |
---|
50 | ABAC_IN_PROLOG--; \ |
---|
51 | } |
---|
52 | |
---|
53 | |
---|
54 | #endif /* __ABAC_I_H__ */ |
---|
55 | |
---|