]> www.wagner.pp.ru Git - openssl-gost/engine.git/blobdiff - test_params.c
Merge branch 'mgm_impl' of https://github.com/gost-engine/engine into mgm_impl
[openssl-gost/engine.git] / test_params.c
index b847ad1285791e03d574860a3a337abd48b84794..f7d4b90f8fbb3989ea9b94ce4713f9e38bfb0207 100644 (file)
@@ -949,6 +949,8 @@ static int test_cert(struct test_cert *tc)
     EVP_MD_CTX_free(md_ctx);
     ret |= err != 1;
 
+    X509_free(x);
+    OPENSSL_free(tbs);
     return ret;
 }
 
@@ -1045,6 +1047,7 @@ static int test_param(struct test_param *t)
     printf("  EVP_PKEY_verify API\t\t");
     T(EVP_PKEY_verify_init(ctx));
     err = EVP_PKEY_verify(ctx, sig, siglen, t->hash, t->len);
+    EVP_PKEY_CTX_free(ctx);
     print_test_result(err);
     ret |= err != 1;
 
@@ -1082,6 +1085,7 @@ static int test_param(struct test_param *t)
     }
 
     OPENSSL_free(sig);
+    EVP_PKEY_free(pkey);
     return ret;
 }
 
@@ -1089,9 +1093,13 @@ int main(int argc, char **argv)
 {
     int ret = 0;
 
-    setenv("OPENSSL_CONF", "../example.conf", 0);
+    setenv("OPENSSL_ENGINES", ENGINE_DIR, 0);
     OPENSSL_add_all_algorithms_conf();
     ERR_load_crypto_strings();
+    ENGINE *eng;
+    T(eng = ENGINE_by_id("gost"));
+    T(ENGINE_init(eng));
+    T(ENGINE_set_default(eng, ENGINE_METHOD_ALL));
 
     struct test_param **tpp;
     for (tpp = test_params; *tpp; tpp++)
@@ -1101,5 +1109,8 @@ int main(int argc, char **argv)
     for (tc = test_certs; tc->cert; tc++)
        ret |= test_cert(tc);
 
+    ENGINE_finish(eng);
+    ENGINE_free(eng);
+
     return ret;
 }