aboutsummaryrefslogtreecommitdiffstats
path: root/apps/engine.c
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2006-06-01 12:38:22 +0000
committerDr. Stephen Henson <steve@openssl.org>2006-06-01 12:38:22 +0000
commit6f88c6a634868a97d9613d6ec3663bf83a05d379 (patch)
tree0e030487167f88b35a56e3b0698dff67e0016415 /apps/engine.c
parent58aa573ac2b2bd4b20902ede24f0b7ba97bcef68 (diff)
downloadopenssl-6f88c6a634868a97d9613d6ec3663bf83a05d379.tar.gz
Add missing prototype. Extend engine utility to print public key algorithms.
Diffstat (limited to 'apps/engine.c')
-rw-r--r--apps/engine.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/apps/engine.c b/apps/engine.c
index 9a6dc0d822..a93ea4de3c 100644
--- a/apps/engine.c
+++ b/apps/engine.c
@@ -449,6 +449,7 @@ skip_arg_loop:
const int *nids;
ENGINE_CIPHERS_PTR fn_c;
ENGINE_DIGESTS_PTR fn_d;
+ ENGINE_PKEY_METHS_PTR fn_pk;
if (ENGINE_get_RSA(e) != NULL
&& !append_buf(&cap_buf, "RSA",
@@ -487,6 +488,15 @@ skip_ciphers:
goto end;
skip_digests:
+ fn_pk = ENGINE_get_pkey_meths(e);
+ if(!fn_pk) goto skip_pmeths;
+ n = fn_pk(e, NULL, &nids, 0);
+ for(k=0 ; k < n ; ++k)
+ if(!append_buf(&cap_buf,
+ OBJ_nid2sn(nids[k]),
+ &cap_size, 256))
+ goto end;
+skip_pmeths:
if (cap_buf && (*cap_buf != '\0'))
BIO_printf(bio_out, " [%s]\n", cap_buf);