]> www.wagner.pp.ru Git - openssl-gost/engine.git/blobdiff - test_digest.c
test: List untested digests and ciphers
[openssl-gost/engine.git] / test_digest.c
index ce7f60a591eb1b88bfae14f1d58e2c8ad8ec39d4..7ad999ac2c167d55fc076858cf2fa887a335e392 100644 (file)
@@ -47,6 +47,7 @@
 #define cDGREEN        "\033[0;32m"
 #define cBLUE  "\033[1;34m"
 #define cDBLUE "\033[0;34m"
+#define cMAGENT "\033[1;35m"
 #define cNORM  "\033[m"
 #define TEST_ASSERT(e) {if ((test = (e))) \
                 printf(cRED "  Test FAILED\n" cNORM); \
@@ -726,6 +727,19 @@ int main(int argc, char **argv)
            ret |= do_synthetic_test(tv);
     }
 
+    ENGINE_DIGESTS_PTR fn_c;
+    T(fn_c = ENGINE_get_digests(eng));
+    const int *nids;
+    int n, k;
+    n = fn_c(eng, NULL, &nids, 0);
+    for (k = 0; k < n; ++k) {
+       for (tv = testvecs; tv->nid; tv++)
+           if (tv->nid == nids[k])
+               break;
+       if (!tv->nid)
+           printf(cMAGENT "Digest %s is untested!\n" cNORM, OBJ_nid2sn(nids[k]));
+    }
+
     ENGINE_finish(eng);
     ENGINE_free(eng);