X-Git-Url: http://wagner.pp.ru/gitweb/?a=blobdiff_plain;f=gost_prov.c;h=b4de15fe1e4974197bc6dbf2c7e33b1490a513ca;hb=bf50d9535f4641c55bbe576a74f91f8fc0665d3e;hp=e7fdd967d2b0856fc197929694c7b4f8b98b7d94;hpb=0d53de14d01e8e079e5b5b4e08ec6e9f063139cc;p=openssl-gost%2Fengine.git diff --git a/gost_prov.c b/gost_prov.c index e7fdd96..b4de15f 100644 --- a/gost_prov.c +++ b/gost_prov.c @@ -8,6 +8,7 @@ **********************************************************************/ #include +#include #include "gost_prov.h" #include "gost_lcl.h" #include "prov/err.h" /* libprov err functions */ @@ -99,6 +100,15 @@ static const OSSL_ALGORITHM *gost_operation(void *vprovctx, static int gost_get_params(void *provctx, OSSL_PARAM *params) { + OSSL_PARAM *p; + + p = OSSL_PARAM_locate(params, OSSL_PROV_PARAM_NAME); + if (p != NULL && !OSSL_PARAM_set_utf8_ptr(p, "OpenSSL GOST Provider")) + return 0; + p = OSSL_PARAM_locate(params, OSSL_PROV_PARAM_STATUS); + if (p != NULL && !OSSL_PARAM_set_int(p, 1)) /* We never fail. */ + return 0; + return 1; } @@ -143,6 +153,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,