mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2026-07-11 07:30:55 +02:00
Merge pull request #6334 from SparkiDev/openssl_ec_set_priv_key_check
OpenSSL EC API: fix setting private key
This commit is contained in:
@@ -12753,7 +12753,7 @@ WOLFSSL_BIGNUM *wolfSSL_EC_KEY_get0_private_key(const WOLFSSL_EC_KEY *key)
|
||||
* @return 0 on failure.
|
||||
*/
|
||||
int wolfSSL_EC_KEY_set_private_key(WOLFSSL_EC_KEY *key,
|
||||
const WOLFSSL_BIGNUM *priv_key)
|
||||
const WOLFSSL_BIGNUM *priv_key)
|
||||
{
|
||||
int ret = 1;
|
||||
|
||||
@@ -12765,6 +12765,13 @@ int wolfSSL_EC_KEY_set_private_key(WOLFSSL_EC_KEY *key,
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
/* Check for obvious invalid values. */
|
||||
if (wolfSSL_BN_is_negative(priv_key) || wolfSSL_BN_is_zero(priv_key) ||
|
||||
wolfSSL_BN_is_one(priv_key)) {
|
||||
WOLFSSL_MSG("Invalid private key value");
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
if (ret == 1) {
|
||||
/* Free key if previously set. */
|
||||
if (key->priv_key != NULL) {
|
||||
|
||||
Reference in New Issue
Block a user