6eb8f62
diff -up openssl-1.1.0h/apps/version.c.version-add-engines openssl-1.1.0h/apps/version.c
6eb8f62
--- openssl-1.1.0h/apps/version.c.version-add-engines	2018-03-27 15:50:37.000000000 +0200
6eb8f62
+++ openssl-1.1.0h/apps/version.c	2018-03-29 14:33:30.732879537 +0200
6eb8f62
@@ -52,7 +52,7 @@ int version_main(int argc, char **argv)
510bcc2
 {
510bcc2
     int ret = 1, dirty = 0;
510bcc2
     int cflags = 0, version = 0, date = 0, options = 0, platform = 0, dir = 0;
510bcc2
-    int engdir = 0;
510bcc2
+    int engdir = 0, engines = 0;
510bcc2
     char *prog;
510bcc2
     OPTION_CHOICE o;
510bcc2
 
6eb8f62
@@ -90,7 +90,7 @@ opthelp:
510bcc2
             dirty = version = 1;
510bcc2
             break;
510bcc2
         case OPT_A:
6eb8f62
-            options = cflags = version = date = platform = dir = engdir = 1;
6eb8f62
+            options = cflags = version = date = platform = dir = engdir = engines = 1;
510bcc2
             break;
510bcc2
         }
510bcc2
     }
6eb8f62
@@ -139,6 +139,16 @@ opthelp:
510bcc2
         printf("%s\n", OpenSSL_version(OPENSSL_DIR));
510bcc2
     if (engdir)
510bcc2
         printf("%s\n", OpenSSL_version(OPENSSL_ENGINES_DIR));
510bcc2
+    if (engines) {
510bcc2
+        ENGINE *e;
510bcc2
+        printf("engines:  ");
510bcc2
+        e = ENGINE_get_first();
510bcc2
+        while (e) {
510bcc2
+            printf("%s ", ENGINE_get_id(e));
510bcc2
+            e = ENGINE_get_next(e);
510bcc2
+        }
510bcc2
+        printf("\n");
510bcc2
+    }
510bcc2
     ret = 0;
510bcc2
  end:
510bcc2
     return (ret);