diff options
Diffstat (limited to 'src/usr.bin/openssl/genpkey.c')
-rw-r--r-- | src/usr.bin/openssl/genpkey.c | 60 |
1 files changed, 30 insertions, 30 deletions
diff --git a/src/usr.bin/openssl/genpkey.c b/src/usr.bin/openssl/genpkey.c index ce266f404c..e2445c1433 100644 --- a/src/usr.bin/openssl/genpkey.c +++ b/src/usr.bin/openssl/genpkey.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: genpkey.c,v 1.15 2023/03/05 13:12:53 tb Exp $ */ | 1 | /* $OpenBSD: genpkey.c,v 1.16 2023/03/06 14:32:06 tb Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 2006 | 3 | * project 2006 |
4 | */ | 4 | */ |
@@ -76,13 +76,13 @@ static struct { | |||
76 | int outformat; | 76 | int outformat; |
77 | char *passarg; | 77 | char *passarg; |
78 | int text; | 78 | int text; |
79 | } genpkey_config; | 79 | } cfg; |
80 | 80 | ||
81 | static int | 81 | static int |
82 | genpkey_opt_algorithm(char *arg) | 82 | genpkey_opt_algorithm(char *arg) |
83 | { | 83 | { |
84 | if (!init_gen_str(bio_err, genpkey_config.ctx, arg, | 84 | if (!init_gen_str(bio_err, cfg.ctx, arg, |
85 | genpkey_config.do_param)) | 85 | cfg.do_param)) |
86 | return (1); | 86 | return (1); |
87 | 87 | ||
88 | return (0); | 88 | return (0); |
@@ -96,16 +96,16 @@ genpkey_opt_cipher(int argc, char **argv, int *argsused) | |||
96 | if (*name++ != '-') | 96 | if (*name++ != '-') |
97 | return (1); | 97 | return (1); |
98 | 98 | ||
99 | if (genpkey_config.do_param == 1) | 99 | if (cfg.do_param == 1) |
100 | return (1); | 100 | return (1); |
101 | 101 | ||
102 | if (strcmp(name, "none") == 0) { | 102 | if (strcmp(name, "none") == 0) { |
103 | genpkey_config.cipher = NULL; | 103 | cfg.cipher = NULL; |
104 | *argsused = 1; | 104 | *argsused = 1; |
105 | return (0); | 105 | return (0); |
106 | } | 106 | } |
107 | 107 | ||
108 | if ((genpkey_config.cipher = EVP_get_cipherbyname(name)) != NULL) { | 108 | if ((cfg.cipher = EVP_get_cipherbyname(name)) != NULL) { |
109 | *argsused = 1; | 109 | *argsused = 1; |
110 | return (0); | 110 | return (0); |
111 | } | 111 | } |
@@ -116,9 +116,9 @@ genpkey_opt_cipher(int argc, char **argv, int *argsused) | |||
116 | static int | 116 | static int |
117 | genpkey_opt_paramfile(char *arg) | 117 | genpkey_opt_paramfile(char *arg) |
118 | { | 118 | { |
119 | if (genpkey_config.do_param == 1) | 119 | if (cfg.do_param == 1) |
120 | return (1); | 120 | return (1); |
121 | if (!init_keygen_file(bio_err, genpkey_config.ctx, arg)) | 121 | if (!init_keygen_file(bio_err, cfg.ctx, arg)) |
122 | return (1); | 122 | return (1); |
123 | 123 | ||
124 | return (0); | 124 | return (0); |
@@ -127,12 +127,12 @@ genpkey_opt_paramfile(char *arg) | |||
127 | static int | 127 | static int |
128 | genpkey_opt_pkeyopt(char *arg) | 128 | genpkey_opt_pkeyopt(char *arg) |
129 | { | 129 | { |
130 | if (*genpkey_config.ctx == NULL) { | 130 | if (*cfg.ctx == NULL) { |
131 | BIO_puts(bio_err, "No keytype specified\n"); | 131 | BIO_puts(bio_err, "No keytype specified\n"); |
132 | return (1); | 132 | return (1); |
133 | } | 133 | } |
134 | 134 | ||
135 | if (pkey_ctrl_string(*genpkey_config.ctx, arg) <= 0) { | 135 | if (pkey_ctrl_string(*cfg.ctx, arg) <= 0) { |
136 | BIO_puts(bio_err, "parameter setting error\n"); | 136 | BIO_puts(bio_err, "parameter setting error\n"); |
137 | ERR_print_errors(bio_err); | 137 | ERR_print_errors(bio_err); |
138 | return (1); | 138 | return (1); |
@@ -153,21 +153,21 @@ static const struct option genpkey_options[] = { | |||
153 | .name = "genparam", | 153 | .name = "genparam", |
154 | .desc = "Generate a set of parameters instead of a private key", | 154 | .desc = "Generate a set of parameters instead of a private key", |
155 | .type = OPTION_FLAG, | 155 | .type = OPTION_FLAG, |
156 | .opt.flag = &genpkey_config.do_param, | 156 | .opt.flag = &cfg.do_param, |
157 | }, | 157 | }, |
158 | { | 158 | { |
159 | .name = "out", | 159 | .name = "out", |
160 | .argname = "file", | 160 | .argname = "file", |
161 | .desc = "Output file to write to (default stdout)", | 161 | .desc = "Output file to write to (default stdout)", |
162 | .type = OPTION_ARG, | 162 | .type = OPTION_ARG, |
163 | .opt.arg = &genpkey_config.outfile, | 163 | .opt.arg = &cfg.outfile, |
164 | }, | 164 | }, |
165 | { | 165 | { |
166 | .name = "outform", | 166 | .name = "outform", |
167 | .argname = "format", | 167 | .argname = "format", |
168 | .desc = "Output format (DER or PEM)", | 168 | .desc = "Output format (DER or PEM)", |
169 | .type = OPTION_ARG_FORMAT, | 169 | .type = OPTION_ARG_FORMAT, |
170 | .opt.value = &genpkey_config.outformat, | 170 | .opt.value = &cfg.outformat, |
171 | }, | 171 | }, |
172 | { | 172 | { |
173 | .name = "paramfile", | 173 | .name = "paramfile", |
@@ -182,7 +182,7 @@ static const struct option genpkey_options[] = { | |||
182 | .argname = "arg", | 182 | .argname = "arg", |
183 | .desc = "Output file password source", | 183 | .desc = "Output file password source", |
184 | .type = OPTION_ARG, | 184 | .type = OPTION_ARG, |
185 | .opt.arg = &genpkey_config.passarg, | 185 | .opt.arg = &cfg.passarg, |
186 | }, | 186 | }, |
187 | { | 187 | { |
188 | .name = "pkeyopt", | 188 | .name = "pkeyopt", |
@@ -195,7 +195,7 @@ static const struct option genpkey_options[] = { | |||
195 | .name = "text", | 195 | .name = "text", |
196 | .desc = "Print the private/public key in human readable form", | 196 | .desc = "Print the private/public key in human readable form", |
197 | .type = OPTION_FLAG, | 197 | .type = OPTION_FLAG, |
198 | .opt.flag = &genpkey_config.text, | 198 | .opt.flag = &cfg.text, |
199 | }, | 199 | }, |
200 | { | 200 | { |
201 | .name = NULL, | 201 | .name = NULL, |
@@ -229,9 +229,9 @@ genpkey_main(int argc, char **argv) | |||
229 | exit(1); | 229 | exit(1); |
230 | } | 230 | } |
231 | 231 | ||
232 | memset(&genpkey_config, 0, sizeof(genpkey_config)); | 232 | memset(&cfg, 0, sizeof(cfg)); |
233 | genpkey_config.ctx = &ctx; | 233 | cfg.ctx = &ctx; |
234 | genpkey_config.outformat = FORMAT_PEM; | 234 | cfg.outformat = FORMAT_PEM; |
235 | 235 | ||
236 | if (options_parse(argc, argv, genpkey_options, NULL, NULL) != 0) { | 236 | if (options_parse(argc, argv, genpkey_options, NULL, NULL) != 0) { |
237 | genpkey_usage(); | 237 | genpkey_usage(); |
@@ -243,15 +243,15 @@ genpkey_main(int argc, char **argv) | |||
243 | goto end; | 243 | goto end; |
244 | } | 244 | } |
245 | 245 | ||
246 | if (!app_passwd(bio_err, genpkey_config.passarg, NULL, &pass, NULL)) { | 246 | if (!app_passwd(bio_err, cfg.passarg, NULL, &pass, NULL)) { |
247 | BIO_puts(bio_err, "Error getting password\n"); | 247 | BIO_puts(bio_err, "Error getting password\n"); |
248 | goto end; | 248 | goto end; |
249 | } | 249 | } |
250 | if (genpkey_config.outfile != NULL) { | 250 | if (cfg.outfile != NULL) { |
251 | if ((out = BIO_new_file(genpkey_config.outfile, "wb")) == | 251 | if ((out = BIO_new_file(cfg.outfile, "wb")) == |
252 | NULL) { | 252 | NULL) { |
253 | BIO_printf(bio_err, "Can't open output file %s\n", | 253 | BIO_printf(bio_err, "Can't open output file %s\n", |
254 | genpkey_config.outfile); | 254 | cfg.outfile); |
255 | goto end; | 255 | goto end; |
256 | } | 256 | } |
257 | } else { | 257 | } else { |
@@ -261,7 +261,7 @@ genpkey_main(int argc, char **argv) | |||
261 | EVP_PKEY_CTX_set_cb(ctx, genpkey_cb); | 261 | EVP_PKEY_CTX_set_cb(ctx, genpkey_cb); |
262 | EVP_PKEY_CTX_set_app_data(ctx, bio_err); | 262 | EVP_PKEY_CTX_set_app_data(ctx, bio_err); |
263 | 263 | ||
264 | if (genpkey_config.do_param) { | 264 | if (cfg.do_param) { |
265 | if (EVP_PKEY_paramgen(ctx, &pkey) <= 0) { | 265 | if (EVP_PKEY_paramgen(ctx, &pkey) <= 0) { |
266 | BIO_puts(bio_err, "Error generating parameters\n"); | 266 | BIO_puts(bio_err, "Error generating parameters\n"); |
267 | ERR_print_errors(bio_err); | 267 | ERR_print_errors(bio_err); |
@@ -275,12 +275,12 @@ genpkey_main(int argc, char **argv) | |||
275 | } | 275 | } |
276 | } | 276 | } |
277 | 277 | ||
278 | if (genpkey_config.do_param) | 278 | if (cfg.do_param) |
279 | rv = PEM_write_bio_Parameters(out, pkey); | 279 | rv = PEM_write_bio_Parameters(out, pkey); |
280 | else if (genpkey_config.outformat == FORMAT_PEM) | 280 | else if (cfg.outformat == FORMAT_PEM) |
281 | rv = PEM_write_bio_PrivateKey(out, pkey, genpkey_config.cipher, | 281 | rv = PEM_write_bio_PrivateKey(out, pkey, cfg.cipher, |
282 | NULL, 0, NULL, pass); | 282 | NULL, 0, NULL, pass); |
283 | else if (genpkey_config.outformat == FORMAT_ASN1) | 283 | else if (cfg.outformat == FORMAT_ASN1) |
284 | rv = i2d_PrivateKey_bio(out, pkey); | 284 | rv = i2d_PrivateKey_bio(out, pkey); |
285 | else { | 285 | else { |
286 | BIO_printf(bio_err, "Bad format specified for key\n"); | 286 | BIO_printf(bio_err, "Bad format specified for key\n"); |
@@ -291,8 +291,8 @@ genpkey_main(int argc, char **argv) | |||
291 | BIO_puts(bio_err, "Error writing key\n"); | 291 | BIO_puts(bio_err, "Error writing key\n"); |
292 | ERR_print_errors(bio_err); | 292 | ERR_print_errors(bio_err); |
293 | } | 293 | } |
294 | if (genpkey_config.text) { | 294 | if (cfg.text) { |
295 | if (genpkey_config.do_param) | 295 | if (cfg.do_param) |
296 | rv = EVP_PKEY_print_params(out, pkey, 0, NULL); | 296 | rv = EVP_PKEY_print_params(out, pkey, 0, NULL); |
297 | else | 297 | else |
298 | rv = EVP_PKEY_print_private(out, pkey, 0, NULL); | 298 | rv = EVP_PKEY_print_private(out, pkey, 0, NULL); |