diff options
Diffstat (limited to 'src/certtool-gaa.c')
-rw-r--r-- | src/certtool-gaa.c | 97 |
1 files changed, 60 insertions, 37 deletions
diff --git a/src/certtool-gaa.c b/src/certtool-gaa.c index fac7e054ef..a0b1e02d9f 100644 --- a/src/certtool-gaa.c +++ b/src/certtool-gaa.c @@ -159,6 +159,7 @@ void gaa_help(void) __gaa_helpsingle(0, "bits", "BITS ", "specify the number of bits for key generation."); __gaa_helpsingle(0, "outfile", "FILE ", "Output file."); __gaa_helpsingle(0, "infile", "FILE ", "Output file."); + __gaa_helpsingle(0, "template", "FILE ", "Template file to use for non interactive operation."); __gaa_helpsingle('d', "debug", "LEVEL ", "specify the debug level. Default is 1."); __gaa_helpsingle('h', "help", "", "shows this help text"); __gaa_helpsingle('v', "version", "", "shows the program's version"); @@ -177,8 +178,10 @@ typedef struct _gaainfo gaainfo; struct _gaainfo { -#line 90 "certtool.gaa" +#line 94 "certtool.gaa" int debug; +#line 90 "certtool.gaa" + char *template; #line 87 "certtool.gaa" char *infile; #line 84 "certtool.gaa" @@ -263,40 +266,41 @@ int gaa_error = 0; #define GAA_MULTIPLE_OPTION 3 #define GAA_REST 0 -#define GAA_NB_OPTION 33 +#define GAA_NB_OPTION 34 #define GAAOPTID_copyright 1 #define GAAOPTID_version 2 #define GAAOPTID_help 3 #define GAAOPTID_debug 4 -#define GAAOPTID_infile 5 -#define GAAOPTID_outfile 6 -#define GAAOPTID_bits 7 -#define GAAOPTID_outder 8 -#define GAAOPTID_inder 9 -#define GAAOPTID_export_ciphers 10 -#define GAAOPTID_dsa 11 -#define GAAOPTID_pkcs8 12 -#define GAAOPTID_to_p12 13 -#define GAAOPTID_key_info 14 -#define GAAOPTID_p7_info 15 -#define GAAOPTID_p12_info 16 -#define GAAOPTID_crl_info 17 -#define GAAOPTID_certificate_info 18 -#define GAAOPTID_password 19 -#define GAAOPTID_load_ca_certificate 20 -#define GAAOPTID_load_ca_privkey 21 -#define GAAOPTID_load_certificate 22 -#define GAAOPTID_load_request 23 -#define GAAOPTID_load_privkey 24 -#define GAAOPTID_generate_dh_params 25 -#define GAAOPTID_verify_crl 26 -#define GAAOPTID_verify_chain 27 -#define GAAOPTID_generate_request 28 -#define GAAOPTID_generate_privkey 29 -#define GAAOPTID_update_certificate 30 -#define GAAOPTID_generate_crl 31 -#define GAAOPTID_generate_certificate 32 -#define GAAOPTID_generate_self_signed 33 +#define GAAOPTID_template 5 +#define GAAOPTID_infile 6 +#define GAAOPTID_outfile 7 +#define GAAOPTID_bits 8 +#define GAAOPTID_outder 9 +#define GAAOPTID_inder 10 +#define GAAOPTID_export_ciphers 11 +#define GAAOPTID_dsa 12 +#define GAAOPTID_pkcs8 13 +#define GAAOPTID_to_p12 14 +#define GAAOPTID_key_info 15 +#define GAAOPTID_p7_info 16 +#define GAAOPTID_p12_info 17 +#define GAAOPTID_crl_info 18 +#define GAAOPTID_certificate_info 19 +#define GAAOPTID_password 20 +#define GAAOPTID_load_ca_certificate 21 +#define GAAOPTID_load_ca_privkey 22 +#define GAAOPTID_load_certificate 23 +#define GAAOPTID_load_request 24 +#define GAAOPTID_load_privkey 25 +#define GAAOPTID_generate_dh_params 26 +#define GAAOPTID_verify_crl 27 +#define GAAOPTID_verify_chain 28 +#define GAAOPTID_generate_request 29 +#define GAAOPTID_generate_privkey 30 +#define GAAOPTID_update_certificate 31 +#define GAAOPTID_generate_crl 32 +#define GAAOPTID_generate_certificate 33 +#define GAAOPTID_generate_self_signed 34 #line 168 "gaa.skel" @@ -489,6 +493,12 @@ struct GAAOPTION_debug int size1; }; +struct GAAOPTION_template +{ + char* arg1; + int size1; +}; + struct GAAOPTION_infile { char* arg1; @@ -573,6 +583,7 @@ int gaa_get_option_num(char *str, int status) { case GAA_LETTER_OPTION: GAA_CHECK1STR("d", GAAOPTID_debug); + GAA_CHECK1STR("", GAAOPTID_template); GAA_CHECK1STR("", GAAOPTID_infile); GAA_CHECK1STR("", GAAOPTID_outfile); GAA_CHECK1STR("", GAAOPTID_bits); @@ -615,6 +626,7 @@ int gaa_get_option_num(char *str, int status) GAA_CHECKSTR("version", GAAOPTID_version); GAA_CHECKSTR("help", GAAOPTID_help); GAA_CHECKSTR("debug", GAAOPTID_debug); + GAA_CHECKSTR("template", GAAOPTID_template); GAA_CHECKSTR("infile", GAAOPTID_infile); GAA_CHECKSTR("outfile", GAAOPTID_outfile); GAA_CHECKSTR("bits", GAAOPTID_bits); @@ -657,6 +669,7 @@ int gaa_try(int gaa_num, int gaa_index, gaainfo *gaaval, char *opt_list) int OK = 0; int gaa_last_non_option; struct GAAOPTION_debug GAATMP_debug; + struct GAAOPTION_template GAATMP_template; struct GAAOPTION_infile GAATMP_infile; struct GAAOPTION_outfile GAATMP_outfile; struct GAAOPTION_bits GAATMP_bits; @@ -688,21 +701,21 @@ int gaa_try(int gaa_num, int gaa_index, gaainfo *gaaval, char *opt_list) { case GAAOPTID_copyright: OK = 0; -#line 96 "certtool.gaa" +#line 100 "certtool.gaa" { print_license(); exit(0); ;}; return GAA_OK; break; case GAAOPTID_version: OK = 0; -#line 95 "certtool.gaa" +#line 99 "certtool.gaa" { certtool_version(); exit(0); ;}; return GAA_OK; break; case GAAOPTID_help: OK = 0; -#line 93 "certtool.gaa" +#line 97 "certtool.gaa" { gaa_help(); exit(0); ;}; return GAA_OK; @@ -712,11 +725,21 @@ int gaa_try(int gaa_num, int gaa_index, gaainfo *gaaval, char *opt_list) GAA_TESTMOREARGS; GAA_FILL(GAATMP_debug.arg1, gaa_getint, GAATMP_debug.size1); gaa_index++; -#line 91 "certtool.gaa" +#line 95 "certtool.gaa" { gaaval->debug = GAATMP_debug.arg1 ;}; return GAA_OK; break; + case GAAOPTID_template: + OK = 0; + GAA_TESTMOREARGS; + GAA_FILL(GAATMP_template.arg1, gaa_getstr, GAATMP_template.size1); + gaa_index++; +#line 91 "certtool.gaa" +{ gaaval->template = GAATMP_template.arg1 ;}; + + return GAA_OK; + break; case GAAOPTID_infile: OK = 0; GAA_TESTMOREARGS; @@ -971,11 +994,11 @@ int gaa(int argc, char **argv, gaainfo *gaaval) if(inited == 0) { -#line 98 "certtool.gaa" +#line 102 "certtool.gaa" { gaaval->bits = 1024; gaaval->pkcs8 = 0; gaaval->privkey = NULL; gaaval->ca=NULL; gaaval->ca_privkey = NULL; gaaval->debug=1; gaaval->request = NULL; gaaval->infile = NULL; gaaval->outfile = NULL; gaaval->cert = NULL; gaaval->incert_format = 0; gaaval->outcert_format = 0; gaaval->action=-1; gaaval->pass = NULL; - gaaval->export = 0; ;}; + gaaval->export = 0; gaaval->template = NULL; ;}; } inited = 1; |