X-Git-Url: http://wagner.pp.ru/gitweb/?a=blobdiff_plain;f=gost_pmeth.c;h=41e53b67e2da2794977868dda2b20b7f81cc83fd;hb=bd8317a59b32ad98195f60305cc2446dcfb8b1a5;hp=d4364e498db66eb68225abb67b5d270ad9f60001;hpb=260442f532aa18ca2a84a4124ef72afbd713accf;p=openssl-gost%2Fengine.git diff --git a/gost_pmeth.c b/gost_pmeth.c index d4364e4..41e53b6 100644 --- a/gost_pmeth.c +++ b/gost_pmeth.c @@ -12,12 +12,19 @@ #include #include #include /* For string_to_hex */ +#include /* For OPENSSL_VERSION_MAJOR */ #include #include #include #include "gost_lcl.h" #include "e_gost_err.h" +#define ossl3_const +#ifdef OPENSSL_VERSION_MAJOR +#undef ossl3_const +#define ossl3_const const +#endif + /* -----init, cleanup, copy - uniform for all algs --------------*/ /* Allocates new gost_pmeth_data structure and assigns it as data */ static int pkey_gost_init(EVP_PKEY_CTX *ctx) @@ -53,7 +60,7 @@ static int pkey_gost_init(EVP_PKEY_CTX *ctx) } /* Copies contents of gost_pmeth_data structure */ -static int pkey_gost_copy(EVP_PKEY_CTX *dst, EVP_PKEY_CTX *src) +static int pkey_gost_copy(EVP_PKEY_CTX *dst, ossl3_const EVP_PKEY_CTX *src) { struct gost_pmeth_data *dst_data, *src_data; if (!pkey_gost_init(dst)) { @@ -564,7 +571,7 @@ static void pkey_gost_mac_cleanup(EVP_PKEY_CTX *ctx) OPENSSL_free(data); } -static int pkey_gost_mac_copy(EVP_PKEY_CTX *dst, EVP_PKEY_CTX *src) +static int pkey_gost_mac_copy(EVP_PKEY_CTX *dst, ossl3_const EVP_PKEY_CTX *src) { struct gost_mac_pmeth_data *dst_data, *src_data; if (!pkey_gost_mac_init(dst)) { @@ -960,7 +967,7 @@ static int pkey_gost_mac_signctx(EVP_PKEY_CTX *ctx, unsigned char *sig, } EVP_MD_meth_get_ctrl(EVP_MD_CTX_md(mctx)) - (mctx, EVP_MD_CTRL_MAC_LEN, data->mac_size, NULL); + (mctx, EVP_MD_CTRL_XOF_LEN, data->mac_size, NULL); ret = EVP_DigestFinal_ex(mctx, sig, &tmpsiglen); *siglen = data->mac_size; return ret;