diff options
Diffstat (limited to 'src/usr.bin/openssl/cms.c')
| -rw-r--r-- | src/usr.bin/openssl/cms.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/usr.bin/openssl/cms.c b/src/usr.bin/openssl/cms.c index 9e955cf1ac..79728e0b5e 100644 --- a/src/usr.bin/openssl/cms.c +++ b/src/usr.bin/openssl/cms.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: cms.c,v 1.26 2022/01/06 11:46:05 inoguchi Exp $ */ | 1 | /* $OpenBSD: cms.c,v 1.27 2022/01/06 12:54:51 inoguchi 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. | 3 | * project. |
| 4 | */ | 4 | */ |
| @@ -209,6 +209,8 @@ cms_opt_cipher(int argc, char **argv, int *argsused) | |||
| 209 | static int | 209 | static int |
| 210 | cms_opt_econtent_type(char *arg) | 210 | cms_opt_econtent_type(char *arg) |
| 211 | { | 211 | { |
| 212 | ASN1_OBJECT_free(cms_config.econtent_type); | ||
| 213 | |||
| 212 | if ((cms_config.econtent_type = OBJ_txt2obj(arg, 0)) == NULL) { | 214 | if ((cms_config.econtent_type = OBJ_txt2obj(arg, 0)) == NULL) { |
| 213 | BIO_printf(bio_err, "Invalid OID %s\n", arg); | 215 | BIO_printf(bio_err, "Invalid OID %s\n", arg); |
| 214 | return (1); | 216 | return (1); |
| @@ -377,6 +379,8 @@ cms_opt_secretkey(char *arg) | |||
| 377 | { | 379 | { |
| 378 | long ltmp; | 380 | long ltmp; |
| 379 | 381 | ||
| 382 | free(cms_config.secret_key); | ||
| 383 | |||
| 380 | if ((cms_config.secret_key = string_to_hex(arg, <mp)) == NULL) { | 384 | if ((cms_config.secret_key = string_to_hex(arg, <mp)) == NULL) { |
| 381 | BIO_printf(bio_err, "Invalid key %s\n", arg); | 385 | BIO_printf(bio_err, "Invalid key %s\n", arg); |
| 382 | return (1); | 386 | return (1); |
| @@ -390,6 +394,8 @@ cms_opt_secretkeyid(char *arg) | |||
| 390 | { | 394 | { |
| 391 | long ltmp; | 395 | long ltmp; |
| 392 | 396 | ||
| 397 | free(cms_config.secret_keyid); | ||
| 398 | |||
| 393 | if ((cms_config.secret_keyid = string_to_hex(arg, <mp)) == NULL) { | 399 | if ((cms_config.secret_keyid = string_to_hex(arg, <mp)) == NULL) { |
| 394 | BIO_printf(bio_err, "Invalid id %s\n", arg); | 400 | BIO_printf(bio_err, "Invalid id %s\n", arg); |
| 395 | return (1); | 401 | return (1); |
