X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/blobdiff_plain/0f3faccdf5f2f0cfa40bd9bec495c4930052a51f..578a86d91941a0f722b87973d88e84ec2cf9a608:/group.h diff --git a/group.h b/group.h index 0e32de6..9578f33 100644 --- a/group.h +++ b/group.h @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: group.h,v 1.3 2004/04/04 19:04:11 mdw Exp $ + * $Id: group.h,v 1.5 2004/04/17 09:58:37 mdw Exp $ * * General cyclic group abstraction * @@ -27,24 +27,6 @@ * MA 02111-1307, USA. */ -/*----- Revision history --------------------------------------------------* - * - * $Log: group.h,v $ - * Revision 1.3 2004/04/04 19:04:11 mdw - * Raw I/O of elliptic curve points and group elements. - * - * Revision 1.2 2004/04/03 03:32:05 mdw - * General robustification. - * - * Revision 1.1 2004/04/01 12:50:09 mdw - * Add cyclic group abstraction, with test code. Separate off exponentation - * functions for better static linking. Fix a buttload of bugs on the way. - * Generally ensure that negative exponents do inversion correctly. Add - * table of standard prime-field subgroups. (Binary field subgroups are - * currently unimplemented but easy to add if anyone ever finds a good one.) - * - */ - #ifndef CATACOMB_GROUP_H #define CATACOMB_GROUP_H @@ -140,7 +122,7 @@ typedef struct group_ops { mp *(*toint)(group */*g*/, mp */*d*/, ge */*x*/); int (*fromint)(group */*g*/, ge */*d*/, mp */*x*/); int (*toec)(group */*g*/, ec */*d*/, ge */*x*/); - int (*fromec)(group */*g*/, ge */*d*/, ec */*p*/); + int (*fromec)(group */*g*/, ge */*d*/, const ec */*p*/); int (*tobuf)(group */*h*/, buf */*b*/, ge */*x*/); int (*frombuf)(group */*h*/, buf */*b*/, ge */*d*/); int (*toraw)(group */*h*/, buf */*b*/, ge */*x*/); @@ -323,7 +305,7 @@ extern int group_stdtoec(group */*g*/, ec */*d*/, ge */*x*/); * * Arguments: @group *g@ = abstract group * @ge *d@ = destination pointer - * @ec *p@ = elliptic curve point + * @const ec *p@ = elliptic curve point * * Returns: Zero for success, @-1@ on failure. * @@ -331,7 +313,7 @@ extern int group_stdtoec(group */*g*/, ec */*d*/, ge */*x*/); * coordinate. */ -extern int group_stdfromec(group */*g*/, ge */*d*/, ec */*p*/); +extern int group_stdfromec(group */*g*/, ge */*d*/, const ec */*p*/); /*----- Prime field subgroups ---------------------------------------------*/