From 4ba163cbf98a0549c4ae01dd5b880341cdbb12e0 Mon Sep 17 00:00:00 2001 From: Geoff Thorpe Date: Mon, 1 Oct 2001 15:41:31 +0000 Subject: [PATCH] Make "openssl engine -c" list any supported digests as well as supported ciphers. --- apps/engine.c | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/apps/engine.c b/apps/engine.c index e64ed53e95..8a04fbcd64 100644 --- a/apps/engine.c +++ b/apps/engine.c @@ -432,7 +432,8 @@ skip_arg_loop: char *cap_buf = NULL; int k,n; const int *nids; - ENGINE_CIPHERS_PTR fn; + ENGINE_CIPHERS_PTR fn_c; + ENGINE_DIGESTS_PTR fn_d; if (ENGINE_get_RSA(e) != NULL && !append_buf(&cap_buf, "RSA", @@ -451,9 +452,9 @@ skip_arg_loop: &cap_size, 256)) goto end; - fn = ENGINE_get_ciphers(e); - if(!fn) goto skip_ciphers; - n = fn(e, NULL, &nids, 0); + fn_c = ENGINE_get_ciphers(e); + if(!fn_c) goto skip_ciphers; + n = fn_c(e, NULL, &nids, 0); for(k=0 ; k < n ; ++k) if(!append_buf(&cap_buf, OBJ_nid2sn(nids[k]), @@ -461,6 +462,16 @@ skip_arg_loop: goto end; skip_ciphers: + fn_d = ENGINE_get_digests(e); + if(!fn_d) goto skip_digests; + n = fn_d(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_digests: if (cap_buf && (*cap_buf != '\0')) BIO_printf(bio_out, " [%s]", cap_buf); -- 2.34.1