From: Dr. Stephen Henson Date: Mon, 24 Jan 2011 15:07:47 +0000 (+0000) Subject: check EC public key isn't point at infinity X-Git-Tag: OpenSSL_1_0_1-beta1~386 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=d184c7b2718bd0c5c32f24ba24cf03a8ce8a588e;p=oweals%2Fopenssl.git check EC public key isn't point at infinity --- diff --git a/crypto/ec/ec_key.c b/crypto/ec/ec_key.c index 12fb0e6d6d..522802c07a 100644 --- a/crypto/ec/ec_key.c +++ b/crypto/ec/ec_key.c @@ -304,7 +304,13 @@ int EC_KEY_check_key(const EC_KEY *eckey) ECerr(EC_F_EC_KEY_CHECK_KEY, ERR_R_PASSED_NULL_PARAMETER); return 0; } - + + if (EC_POINT_is_at_infinity(eckey->group, eckey->pub_key)) + { + ECerr(EC_F_EC_KEY_CHECK_KEY, EC_R_POINT_AT_INFINITY); + goto err; + } + if ((ctx = BN_CTX_new()) == NULL) goto err; if ((point = EC_POINT_new(eckey->group)) == NULL)