X-Git-Url: http://wagner.pp.ru/gitweb/?a=blobdiff_plain;f=gost_prov.c;h=390275c5eaaad4ef85ba41eef76f5a12d58884ec;hb=1c34b3491fd1a83fa29f5d28d67cca62ef965d40;hp=04f4f3de4f59b9c1adf7be0bdd1d12aaff64b400;hpb=bd2d5542f307ae0e9e98a291f0d765a0be58b5fd;p=openssl-gost%2Fengine.git diff --git a/gost_prov.c b/gost_prov.c index 04f4f3d..390275c 100644 --- a/gost_prov.c +++ b/gost_prov.c @@ -89,6 +89,10 @@ static const OSSL_ALGORITHM *gost_operation(void *vprovctx, switch (operation_id) { case OSSL_OP_CIPHER: return GOST_prov_ciphers; + case OSSL_OP_DIGEST: + return GOST_prov_digests; + case OSSL_OP_MAC: + return GOST_prov_macs; } return NULL; } @@ -110,6 +114,8 @@ static const OSSL_ITEM *gost_get_reason_strings(void *provctx) static void gost_teardown(void *vprovctx) { GOST_prov_deinit_ciphers(); + GOST_prov_deinit_digests(); + GOST_prov_deinit_mac_digests(); provider_ctx_free(vprovctx); } @@ -137,6 +143,7 @@ struct prov_ctx_st { # define OSSL_provider_init GOST_provider_init #endif +OPENSSL_EXPORT int OSSL_provider_init(const OSSL_CORE_HANDLE *core, const OSSL_DISPATCH *in, const OSSL_DISPATCH **out,