Commit 2e0db076 authored by Bodo Möller's avatar Bodo Möller
Browse files

Optimized EC_METHODs need specific 'set_curve' and 'free' functions.

parent 58fc6229
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -112,7 +112,7 @@ EC_GROUP *EC_GROUP_new_curve_GFp(const BIGNUM *p, const BIGNUM *a, const BIGNUM

int EC_GROUP_set_generator(EC_GROUP *, const EC_POINT *generator, const BIGNUM *order, const BIGNUM *cofactor);

/* TODO: 'get' functions for EC_GROUPs */
/* TODO: 'set' and 'get' functions for EC_GROUPs */


EC_POINT *EC_POINT_new(const EC_GROUP *);
+9 −0
Original line number Diff line number Diff line
@@ -202,6 +202,9 @@ int ec_GFp_simple_field_sqr(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX


/* method functions in ecp_mont.c */
int ec_GFp_mont_group_set_curve_GFp(EC_GROUP *, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *);
void ec_GFp_mont_group_finish(EC_GROUP *);
void ec_GFp_mont_group_clear_finish(EC_GROUP *);
int ec_GFp_mont_field_mult(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *);
int ec_GFp_mont_field_sqr(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *);
int ec_GFp_mont_field_encode(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *);
@@ -209,6 +212,9 @@ int ec_GFp_mont_field_decode(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CT


/* method functions in ecp_recp.c */
int ec_GFp_recp_group_set_curve_GFp(EC_GROUP *, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *);
void ec_GFp_recp_group_finish(EC_GROUP *);
void ec_GFp_recp_group_clear_finish(EC_GROUP *);
int ec_GFp_recp_field_mult(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *);
int ec_GFp_recp_field_sqr(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *);
int ec_GFp_recp_field_encode(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *);
@@ -216,6 +222,9 @@ int ec_GFp_recp_field_decode(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CT


/* method functions in ecp_nist.c */
int ec_GFp_nist_group_set_curve_GFp(EC_GROUP *, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *);
void ec_GFp_nist_group_finish(EC_GROUP *);
void ec_GFp_nist_group_clear_finish(EC_GROUP *);
int ec_GFp_nist_field_mult(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *);
int ec_GFp_nist_field_sqr(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *);
int ec_GFp_nist_field_encode(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, BN_CTX *);
+1 −1
Original line number Diff line number Diff line
@@ -181,7 +181,7 @@ int EC_GROUP_set_generator(EC_GROUP *group, const EC_POINT *generator, const BIG
	}


/* TODO: 'get' functions for EC_GROUPs */
/* TODO: 'set' and 'get' functions for EC_GROUPs */


/* this has 'package' visibility */
+3 −3
Original line number Diff line number Diff line
@@ -61,9 +61,9 @@ const EC_METHOD *EC_GFp_mont_method(void)
	{
	static const EC_METHOD ret = {
		ec_GFp_simple_group_init,
		ec_GFp_simple_group_set_curve_GFp,
		ec_GFp_simple_group_finish,
		ec_GFp_simple_group_clear_finish,
		ec_GFp_mont_group_set_curve_GFp,
		ec_GFp_mont_group_finish,
		ec_GFp_mont_group_clear_finish,
		ec_GFp_simple_group_copy,
		ec_GFp_simple_group_set_generator,
		/* TODO: 'set' and 'get' functions for EC_GROUPs */
+3 −3
Original line number Diff line number Diff line
@@ -61,9 +61,9 @@ const EC_METHOD *EC_GFp_nist_method(void)
	{
	static const EC_METHOD ret = {
		ec_GFp_simple_group_init,
		ec_GFp_simple_group_set_curve_GFp,
		ec_GFp_simple_group_finish,
		ec_GFp_simple_group_clear_finish,
		ec_GFp_nist_group_set_curve_GFp,
		ec_GFp_nist_group_finish,
		ec_GFp_nist_group_clear_finish,
		ec_GFp_simple_group_copy,
		ec_GFp_simple_group_set_generator,
		/* TODO: 'set' and 'get' functions for EC_GROUPs */
Loading