Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
(Merged from https://github.com/openssl/openssl/pull/8434)
static void list_pkey(void);
static void list_pkey_meth(void);
static void list_type(FUNC_TYPE ft, int one);
static void list_pkey(void);
static void list_pkey_meth(void);
static void list_type(FUNC_TYPE ft, int one);
+static void list_engines(void);
static void list_disabled(void);
char *default_config_file = NULL;
static void list_disabled(void);
char *default_config_file = NULL;
OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_ONE,
OPT_COMMANDS, OPT_DIGEST_COMMANDS, OPT_MAC_ALGORITHMS, OPT_OPTIONS,
OPT_DIGEST_ALGORITHMS, OPT_CIPHER_COMMANDS, OPT_CIPHER_ALGORITHMS,
OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_ONE,
OPT_COMMANDS, OPT_DIGEST_COMMANDS, OPT_MAC_ALGORITHMS, OPT_OPTIONS,
OPT_DIGEST_ALGORITHMS, OPT_CIPHER_COMMANDS, OPT_CIPHER_ALGORITHMS,
- OPT_PK_ALGORITHMS, OPT_PK_METHOD, OPT_DISABLED, OPT_MISSING_HELP,
- OPT_OBJECTS
+ OPT_PK_ALGORITHMS, OPT_PK_METHOD, OPT_ENGINES, OPT_DISABLED,
+ OPT_MISSING_HELP, OPT_OBJECTS
} HELPLIST_CHOICE;
const OPTIONS list_options[] = {
} HELPLIST_CHOICE;
const OPTIONS list_options[] = {
"List of public key algorithms"},
{"public-key-methods", OPT_PK_METHOD, '-',
"List of public key methods"},
"List of public key algorithms"},
{"public-key-methods", OPT_PK_METHOD, '-',
"List of public key methods"},
+ {"engines", OPT_ENGINES, '-',
+ "List of loaded engines"},
{"disabled", OPT_DISABLED, '-',
"List of disabled features"},
{"missing-help", OPT_MISSING_HELP, '-',
{"disabled", OPT_DISABLED, '-',
"List of disabled features"},
{"missing-help", OPT_MISSING_HELP, '-',
case OPT_PK_METHOD:
list_pkey_meth();
break;
case OPT_PK_METHOD:
list_pkey_meth();
break;
+ case OPT_ENGINES:
+ list_engines();
+ break;
case OPT_DISABLED:
list_disabled();
break;
case OPT_DISABLED:
list_disabled();
break;
return strcmp(f1->name, f2->name);
}
return strcmp(f1->name, f2->name);
}
+static void list_engines(void)
+{
+#ifndef OPENSSL_NO_ENGINES
+ ENGINE *e;
+
+ BIO_puts(bio_out, "Engines:\n");
+ e = ENGINE_get_first();
+ while (e) {
+ BIO_printf(bio_out, "%s\n", ENGINE_get_id(e));
+ e = ENGINE_get_next(e);
+ }
+#else
+ BIO_puts(bio_out, "Engine support is disabled.\n");
+#endif
+}
+
static void list_disabled(void)
{
BIO_puts(bio_out, "Disabled algorithms:\n");
static void list_disabled(void)
{
BIO_puts(bio_out, "Disabled algorithms:\n");
[B<-cipher-algorithms>]
[B<-public-key-algorithms>]
[B<-public-key-methods>]
[B<-cipher-algorithms>]
[B<-public-key-algorithms>]
[B<-public-key-methods>]
[B<-disabled>]
=head1 DESCRIPTION
[B<-disabled>]
=head1 DESCRIPTION
Display a list of public key method OIDs: this also includes public key methods
without an associated ASN.1 method, for example, KDF algorithms.
Display a list of public key method OIDs: this also includes public key methods
without an associated ASN.1 method, for example, KDF algorithms.
+=item B<-engines>
+
+Display a list of loaded engines.
+
=item B<-disabled>
Display a list of disabled features, those that were compiled out
=item B<-disabled>
Display a list of disabled features, those that were compiled out