summaryrefslogtreecommitdiff
path: root/src/usr.bin/openssl/pkeyutl.c
diff options
context:
space:
mode:
authorbcook <>2015-09-11 14:30:23 +0000
committerbcook <>2015-09-11 14:30:23 +0000
commite2fad4e6bdd4e404b3f4c186de52078738af2271 (patch)
treecc1109842924cab95a77b6863b32de51b6d4f960 /src/usr.bin/openssl/pkeyutl.c
parent7cea1ef22b79637be449efa70b99c6deaf74ef10 (diff)
downloadopenbsd-e2fad4e6bdd4e404b3f4c186de52078738af2271.tar.gz
openbsd-e2fad4e6bdd4e404b3f4c186de52078738af2271.tar.bz2
openbsd-e2fad4e6bdd4e404b3f4c186de52078738af2271.zip
Remove engine command and parameters from openssl(1).
We do not have any builtin or dynamic engines, meaning openssl(1) has no way to use the engine command or parameters at all. ok jsing@
Diffstat (limited to '')
-rw-r--r--src/usr.bin/openssl/pkeyutl.c30
1 files changed, 9 insertions, 21 deletions
diff --git a/src/usr.bin/openssl/pkeyutl.c b/src/usr.bin/openssl/pkeyutl.c
index 0529b97798..2caa61e282 100644
--- a/src/usr.bin/openssl/pkeyutl.c
+++ b/src/usr.bin/openssl/pkeyutl.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: pkeyutl.c,v 1.6 2015/08/22 16:36:05 jsing Exp $ */ 1/* $OpenBSD: pkeyutl.c,v 1.7 2015/09/11 14:30:23 bcook 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 */
@@ -72,7 +72,7 @@ static void usage(void);
72 72
73static EVP_PKEY_CTX *init_ctx(int *pkeysize, 73static EVP_PKEY_CTX *init_ctx(int *pkeysize,
74 char *keyfile, int keyform, int key_type, 74 char *keyfile, int keyform, int key_type,
75 char *passargin, int pkey_op, ENGINE * e); 75 char *passargin, int pkey_op);
76 76
77static int setup_peer(BIO * err, EVP_PKEY_CTX * ctx, int peerform, 77static int setup_peer(BIO * err, EVP_PKEY_CTX * ctx, int peerform,
78 const char *file); 78 const char *file);
@@ -86,7 +86,6 @@ pkeyutl_main(int argc, char **argv)
86{ 86{
87 BIO *in = NULL, *out = NULL; 87 BIO *in = NULL, *out = NULL;
88 char *infile = NULL, *outfile = NULL, *sigfile = NULL; 88 char *infile = NULL, *outfile = NULL, *sigfile = NULL;
89 ENGINE *e = NULL;
90 int pkey_op = EVP_PKEY_OP_SIGN, key_type = KEY_PRIVKEY; 89 int pkey_op = EVP_PKEY_OP_SIGN, key_type = KEY_PRIVKEY;
91 int keyform = FORMAT_PEM, peerform = FORMAT_PEM; 90 int keyform = FORMAT_PEM, peerform = FORMAT_PEM;
92 char badarg = 0, rev = 0; 91 char badarg = 0, rev = 0;
@@ -126,7 +125,7 @@ pkeyutl_main(int argc, char **argv)
126 else { 125 else {
127 ctx = init_ctx(&keysize, 126 ctx = init_ctx(&keysize,
128 *(++argv), keyform, key_type, 127 *(++argv), keyform, key_type,
129 passargin, pkey_op, e); 128 passargin, pkey_op);
130 if (!ctx) { 129 if (!ctx) {
131 BIO_puts(bio_err, 130 BIO_puts(bio_err,
132 "Error initializing context\n"); 131 "Error initializing context\n");
@@ -155,14 +154,6 @@ pkeyutl_main(int argc, char **argv)
155 else 154 else
156 keyform = str2fmt(*(++argv)); 155 keyform = str2fmt(*(++argv));
157 } 156 }
158#ifndef OPENSSL_NO_ENGINE
159 else if (!strcmp(*argv, "-engine")) {
160 if (--argc < 1)
161 badarg = 1;
162 else
163 e = setup_engine(bio_err, *(++argv), 0);
164 }
165#endif
166 else if (!strcmp(*argv, "-pubin")) 157 else if (!strcmp(*argv, "-pubin"))
167 key_type = KEY_PUBKEY; 158 key_type = KEY_PUBKEY;
168 else if (!strcmp(*argv, "-certin")) 159 else if (!strcmp(*argv, "-certin"))
@@ -342,9 +333,6 @@ usage()
342 BIO_printf(bio_err, "-decrypt decrypt with private key\n"); 333 BIO_printf(bio_err, "-decrypt decrypt with private key\n");
343 BIO_printf(bio_err, "-derive derive shared secret\n"); 334 BIO_printf(bio_err, "-derive derive shared secret\n");
344 BIO_printf(bio_err, "-hexdump hex dump output\n"); 335 BIO_printf(bio_err, "-hexdump hex dump output\n");
345#ifndef OPENSSL_NO_ENGINE
346 BIO_printf(bio_err, "-engine e use engine e, possibly a hardware device.\n");
347#endif
348 BIO_printf(bio_err, "-passin arg pass phrase source\n"); 336 BIO_printf(bio_err, "-passin arg pass phrase source\n");
349 337
350} 338}
@@ -352,7 +340,7 @@ usage()
352static EVP_PKEY_CTX * 340static EVP_PKEY_CTX *
353init_ctx(int *pkeysize, 341init_ctx(int *pkeysize,
354 char *keyfile, int keyform, int key_type, 342 char *keyfile, int keyform, int key_type,
355 char *passargin, int pkey_op, ENGINE * e) 343 char *passargin, int pkey_op)
356{ 344{
357 EVP_PKEY *pkey = NULL; 345 EVP_PKEY *pkey = NULL;
358 EVP_PKEY_CTX *ctx = NULL; 346 EVP_PKEY_CTX *ctx = NULL;
@@ -372,17 +360,17 @@ init_ctx(int *pkeysize,
372 switch (key_type) { 360 switch (key_type) {
373 case KEY_PRIVKEY: 361 case KEY_PRIVKEY:
374 pkey = load_key(bio_err, keyfile, keyform, 0, 362 pkey = load_key(bio_err, keyfile, keyform, 0,
375 passin, e, "Private Key"); 363 passin, "Private Key");
376 break; 364 break;
377 365
378 case KEY_PUBKEY: 366 case KEY_PUBKEY:
379 pkey = load_pubkey(bio_err, keyfile, keyform, 0, 367 pkey = load_pubkey(bio_err, keyfile, keyform, 0,
380 NULL, e, "Public Key"); 368 NULL, "Public Key");
381 break; 369 break;
382 370
383 case KEY_CERT: 371 case KEY_CERT:
384 x = load_cert(bio_err, keyfile, keyform, 372 x = load_cert(bio_err, keyfile, keyform,
385 NULL, e, "Certificate"); 373 NULL, "Certificate");
386 if (x) { 374 if (x) {
387 pkey = X509_get_pubkey(x); 375 pkey = X509_get_pubkey(x);
388 X509_free(x); 376 X509_free(x);
@@ -396,7 +384,7 @@ init_ctx(int *pkeysize,
396 if (!pkey) 384 if (!pkey)
397 goto end; 385 goto end;
398 386
399 ctx = EVP_PKEY_CTX_new(pkey, e); 387 ctx = EVP_PKEY_CTX_new(pkey, NULL);
400 388
401 EVP_PKEY_free(pkey); 389 EVP_PKEY_free(pkey);
402 390
@@ -452,7 +440,7 @@ setup_peer(BIO * err, EVP_PKEY_CTX * ctx, int peerform,
452 BIO_puts(err, "-peerkey command before -inkey\n"); 440 BIO_puts(err, "-peerkey command before -inkey\n");
453 return 0; 441 return 0;
454 } 442 }
455 peer = load_pubkey(bio_err, file, peerform, 0, NULL, NULL, "Peer Key"); 443 peer = load_pubkey(bio_err, file, peerform, 0, NULL, "Peer Key");
456 444
457 if (!peer) { 445 if (!peer) {
458 BIO_printf(bio_err, "Error reading peer key %s\n", file); 446 BIO_printf(bio_err, "Error reading peer key %s\n", file);