Loading crypto/ecdh/ecdh.h +2 −0 Original line number Diff line number Diff line Loading @@ -85,6 +85,8 @@ extern "C" { #endif #define EC_FLAG_COFACTOR_ECDH 0x1000 const ECDH_METHOD *ECDH_OpenSSL(void); void ECDH_set_default_method(const ECDH_METHOD *); Loading crypto/ecdh/ech_ossl.c +12 −0 Original line number Diff line number Diff line Loading @@ -146,6 +146,18 @@ static int ecdh_compute_key(void *out, size_t outlen, const EC_POINT *pub_key, } group = EC_KEY_get0_group(ecdh); if (EC_KEY_get_flags(ecdh) & EC_FLAG_COFACTOR_ECDH) { if (!EC_GROUP_get_cofactor(group, x, ctx) || !BN_mul(x, x, priv_key, ctx)) { ECDHerr(ECDH_F_ECDH_COMPUTE_KEY, ERR_R_MALLOC_FAILURE); goto err; } priv_key = x; } if ((tmp=EC_POINT_new(group)) == NULL) { ECDHerr(ECDH_F_ECDH_COMPUTE_KEY,ERR_R_MALLOC_FAILURE); Loading Loading
crypto/ecdh/ecdh.h +2 −0 Original line number Diff line number Diff line Loading @@ -85,6 +85,8 @@ extern "C" { #endif #define EC_FLAG_COFACTOR_ECDH 0x1000 const ECDH_METHOD *ECDH_OpenSSL(void); void ECDH_set_default_method(const ECDH_METHOD *); Loading
crypto/ecdh/ech_ossl.c +12 −0 Original line number Diff line number Diff line Loading @@ -146,6 +146,18 @@ static int ecdh_compute_key(void *out, size_t outlen, const EC_POINT *pub_key, } group = EC_KEY_get0_group(ecdh); if (EC_KEY_get_flags(ecdh) & EC_FLAG_COFACTOR_ECDH) { if (!EC_GROUP_get_cofactor(group, x, ctx) || !BN_mul(x, x, priv_key, ctx)) { ECDHerr(ECDH_F_ECDH_COMPUTE_KEY, ERR_R_MALLOC_FAILURE); goto err; } priv_key = x; } if ((tmp=EC_POINT_new(group)) == NULL) { ECDHerr(ECDH_F_ECDH_COMPUTE_KEY,ERR_R_MALLOC_FAILURE); Loading