X-Git-Url: http://wagner.pp.ru/gitweb/?a=blobdiff_plain;f=gost_eng.c;h=9e77e5dc6a605bcc87bab2c9acfc46c47a31994e;hb=4820e7bcbca56cc2d7e41793be90afffb7f4265f;hp=472ba82573f0964a593374f8fb5eeb44a5b07eab;hpb=e183e8b50da0b46a957c394af8612432a09a42ca;p=openssl-gost%2Fengine.git diff --git a/gost_eng.c b/gost_eng.c index 472ba82..9e77e5d 100644 --- a/gost_eng.c +++ b/gost_eng.c @@ -102,6 +102,8 @@ static int gost_engine_finish(ENGINE* e) { } static int gost_engine_destroy(ENGINE* e) { + EVP_delete_digest_alias("streebog256"); + EVP_delete_digest_alias("streebog512"); digest_gost_destroy(); digest_gost2012_256_destroy(); digest_gost2012_512_destroy(); @@ -125,6 +127,8 @@ static int gost_engine_destroy(ENGINE* e) { ameth_GostR3410_2012_512 = NULL; ameth_Gost28147_MAC_12 = NULL; + ERR_unload_GOST_strings(); + return 1; } @@ -231,6 +235,11 @@ static int bind_gost(ENGINE* e, const char* id) { goto end; } + if(!EVP_add_digest_alias(SN_id_GostR3411_2012_256, "streebog256") + || !EVP_add_digest_alias(SN_id_GostR3411_2012_512, "streebog512")) { + goto end; + } + ENGINE_register_all_complete(); ERR_load_GOST_strings();