diff -up openssl-0.9.8j/apps/version.c.version-add-engines openssl-0.9.8j/apps/version.c --- openssl-0.9.8j/apps/version.c.version-add-engines 2008-10-20 14:53:33.000000000 +0200 +++ openssl-0.9.8j/apps/version.c 2009-01-13 23:22:03.000000000 +0100 @@ -131,6 +131,7 @@ #ifndef OPENSSL_NO_BF # include <openssl/blowfish.h> #endif +#include <openssl/engine.h> #undef PROG #define PROG version_main @@ -140,7 +141,7 @@ int MAIN(int, char **); int MAIN(int argc, char **argv) { int i, ret = 0; - int cflags = 0, version = 0, date = 0, options = 0, platform = 0, dir = 0; + int cflags=0,version=0,date=0,options=0,platform=0,dir=0,engines=0; apps_startup(); @@ -164,7 +165,7 @@ int MAIN(int argc, char **argv) else if (strcmp(argv[i], "-d") == 0) dir = 1; else if (strcmp(argv[i], "-a") == 0) - date = version = cflags = options = platform = dir = 1; + date=version=cflags=options=platform=dir=engines=1; else { BIO_printf(bio_err, "usage:version -[avbofpd]\n"); ret = 1; @@ -211,6 +209,16 @@ int MAIN(int argc, char **argv) printf("%s\n", SSLeay_version(SSLEAY_CFLAGS)); if (dir) printf("%s\n", SSLeay_version(SSLEAY_DIR)); + if (engines) { + ENGINE *e; + printf("engines: "); + e = ENGINE_get_first(); + while (e) { + printf("%s ", ENGINE_get_id(e)); + e = ENGINE_get_next(e); + } + printf("\n"); + } end: apps_shutdown(); OPENSSL_EXIT(ret);