From: Bodo Möller Date: Thu, 6 Feb 2003 18:07:23 +0000 (+0000) Subject: additional sanity checks for arguments to EC_POINTs_mul() X-Git-Tag: OpenSSL_0_9_7a~19 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a004b06237ee297a971edd2d95cc1c061a9802b2;p=openssl additional sanity checks for arguments to EC_POINTs_mul() --- diff --git a/crypto/ec/ec_mult.c b/crypto/ec/ec_mult.c index 603ba31b81..4dbc931120 100644 --- a/crypto/ec/ec_mult.c +++ b/crypto/ec/ec_mult.c @@ -209,6 +209,17 @@ int EC_POINTs_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, EC_POINT ***val_sub = NULL; /* pointers to sub-arrays of 'val' */ int ret = 0; + if (group->meth != r->meth) + { + ECerr(EC_F_EC_POINTS_MUL, EC_R_INCOMPATIBLE_OBJECTS); + return 0; + } + + if ((scalar == NULL) && (num == 0)) + { + return EC_POINT_set_to_infinity(group, r); + } + if (scalar != NULL) { generator = EC_GROUP_get0_generator(group);