X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/blobdiff_plain/34e4f738bcba58e6d8c4cabbb0b3232a65b42a9d..3384672ab8c0ebc1aec36175d255d2674b172b2d:/mpbarrett.h diff --git a/mpbarrett.h b/mpbarrett.h index 3168205..bb8b36a 100644 --- a/mpbarrett.h +++ b/mpbarrett.h @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: mpbarrett.h,v 1.4 2004/04/01 12:50:09 mdw Exp $ + * $Id$ * * Barrett modular reduction * @@ -27,27 +27,6 @@ * MA 02111-1307, USA. */ -/*----- Revision history --------------------------------------------------* - * - * $Log: mpbarrett.h,v $ - * Revision 1.4 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.) - * - * Revision 1.3 2001/06/16 12:58:47 mdw - * Added simultaneous exponentiation with Barrett reduction. - * - * Revision 1.2 2000/10/08 12:03:44 mdw - * (mpbarrett_reduce): Cope with negative numbers. - * - * Revision 1.1 1999/12/10 23:22:00 mdw - * Barrett reduction support: works with even moduli. - * - */ - /*----- Notes on Barrett reduction ----------------------------------------* * * Barrett reduction is a technique for computing modular residues. Unlike @@ -93,13 +72,12 @@ typedef struct mpbarrett { * Arguments: @mpbarrett *mb@ = pointer to Barrett reduction context * @mp *m@ = modulus to work to * - * - * Returns: --- + * Returns: Zero on success, nonzero on error. * * Use: Initializes a Barrett reduction context ready for use. */ -extern void mpbarrett_create(mpbarrett */*mb*/, mp */*m*/); +extern int mpbarrett_create(mpbarrett */*mb*/, mp */*m*/); /* --- @mpbarrett_destroy@ --- * *