abac0-leakabac0-meicompt_changesgec13mei-idmei-rt0-nmei_rt0mei_rt2mei_rt2_fix_1meiyap-rt1meiyap1rt2tvf-new-xml
Last change
on this file since 085f159 was
085f159,
checked in by Mike Ryan <mikeryan@…>, 14 years ago
|
creddy attribute cert generator
|
-
Property mode set to
100644
|
File size:
1.1 KB
|
Rev | Line | |
---|
[abd7c25] | 1 | #ifndef __CREDDY_H__ |
---|
| 2 | #define __CREDDY_H__ |
---|
| 3 | |
---|
[fd0febd] | 4 | #include <library.h> |
---|
| 5 | #include <credentials/certificates/certificate.h> |
---|
| 6 | #include <credentials/certificates/x509.h> |
---|
| 7 | |
---|
[abd7c25] | 8 | typedef struct _options_t { |
---|
| 9 | int help; |
---|
| 10 | int mode; |
---|
| 11 | |
---|
[fd0febd] | 12 | char *cert; |
---|
| 13 | |
---|
[abd7c25] | 14 | // generate options |
---|
| 15 | char *cn; |
---|
| 16 | int validity; |
---|
[085f159] | 17 | |
---|
| 18 | // attribute options |
---|
| 19 | char *issuer; |
---|
| 20 | char *key; |
---|
| 21 | char *role; |
---|
| 22 | char *subject; |
---|
| 23 | char *subject_role; |
---|
| 24 | char *out; |
---|
[abd7c25] | 25 | } options_t; |
---|
| 26 | |
---|
| 27 | #define MODE_GENERATE 1 |
---|
| 28 | #define MODE_VERIFY 2 |
---|
| 29 | #define MODE_KEYID 3 |
---|
| 30 | #define MODE_ATTRIBUTE 4 |
---|
| 31 | #define MODE_ROLES 5 |
---|
| 32 | |
---|
| 33 | // returns true if a name starts with a letter and is otherwise alphanumeric |
---|
| 34 | int clean_name(char *string); |
---|
| 35 | |
---|
[fd0febd] | 36 | // load an ID cert from file (aborts on fail) |
---|
| 37 | certificate_t *cert_from_file(char *filename); |
---|
| 38 | |
---|
| 39 | // get the keyid from a cert (free result when done) |
---|
| 40 | char *cert_keyid(certificate_t *cert); |
---|
| 41 | |
---|
[085f159] | 42 | // generate a random serial |
---|
| 43 | chunk_t generate_serial(); |
---|
| 44 | |
---|
[abd7c25] | 45 | void usage(options_t *opts); |
---|
| 46 | void *xmalloc(size_t len); |
---|
| 47 | char *xstrdup(char *string); |
---|
| 48 | |
---|
| 49 | // sub programs |
---|
| 50 | void generate_main(options_t *opts); |
---|
[fd0febd] | 51 | void keyid_main(options_t *opts); |
---|
[085f159] | 52 | void attribute_main(options_t *opts); |
---|
[abd7c25] | 53 | |
---|
| 54 | #endif /* __CREDDY_H__ */ |
---|
Note: See
TracBrowser
for help on using the repository browser.