From 9083376e17ad5949beeb6dd7492a8b99b83c267f Mon Sep 17 00:00:00 2001 From: mdw Date: Sat, 1 Jul 2000 11:20:24 +0000 Subject: [PATCH] New functions for freeing public and private keys. Remove bad type name `bbs_param'. --- bbs.h | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/bbs.h b/bbs.h index 2098745..7217f65 100644 --- a/bbs.h +++ b/bbs.h @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: bbs.h,v 1.4 2000/06/17 10:45:48 mdw Exp $ + * $Id: bbs.h,v 1.5 2000/07/01 11:20:24 mdw Exp $ * * The Blum-Blum-Shub random bit generator * @@ -30,6 +30,10 @@ /*----- Revision history --------------------------------------------------* * * $Log: bbs.h,v $ + * Revision 1.5 2000/07/01 11:20:24 mdw + * New functions for freeing public and private keys. Remove bad type name + * `bbs_param'. + * * Revision 1.4 2000/06/17 10:45:48 mdw * Minor changes for key fetching. Typesetting fixes. * @@ -109,10 +113,10 @@ typedef struct bbs_pub { mp *n; } bbs_pub; -typedef struct bbs_param { +typedef struct bbs_priv { mp *p, *q; /* Prime factors (3 mod 4) */ mp *n; /* Product @pq@ -- a Blum integer */ -} bbs_param, bbs_priv; +} bbs_priv; /*----- Key fetching ------------------------------------------------------*/ @@ -122,6 +126,18 @@ extern const key_fetchdef bbs_pubfetch[]; extern const key_fetchdef bbs_privfetch[]; #define BBS_PRIVFETCHSZ 7 +/* --- @bbs_pubfree@, @bbs_privfree@ --- * + * + * Arguments: @bbs_pub *bp@, @bbs_priv *bp@ = pointer to key block + * + * Returns: --- + * + * Use: Frees a BBS key block. + */ + +extern void bbs_pubfree(bbs_pub */*bp*/); +extern void bbs_privfree(bbs_priv */*bp*/); + /*----- The basic generator -----------------------------------------------*/ /* --- @bbs_create@ --- * @@ -221,7 +237,7 @@ extern void bbs_wrap(bbs */*b*/); /* --- @bbs_ff@ --- * * * Arguments: @bbs *b@ = pointer to a BBS generator state - * @bbs_param *bp@ = pointer to BBS modulus factors + * @bbs_priv *bp@ = pointer to BBS modulus factors * @unsigned long n@ = number of steps to make * * Returns: --- @@ -231,12 +247,12 @@ extern void bbs_wrap(bbs */*b*/); * efficiently. */ -extern void bbs_ff(bbs */*b*/, bbs_param */*bp*/, unsigned long /*n*/); +extern void bbs_ff(bbs */*b*/, bbs_priv */*bp*/, unsigned long /*n*/); /* --- @bbs_rew@ --- * * * Arguments: @bbs *b@ = pointer to a BBS generator state - * @bbs_param *bp@ = pointer to BBS modulus factors + * @bbs_priv *bp@ = pointer to BBS modulus factors * @unsigned long n@ = number of steps to make * * Returns: --- @@ -246,13 +262,13 @@ extern void bbs_ff(bbs */*b*/, bbs_param */*bp*/, unsigned long /*n*/); * at all. */ -extern void bbs_rew(bbs */*b*/, bbs_param */*bp*/, unsigned long /*n*/); +extern void bbs_rew(bbs */*b*/, bbs_priv */*bp*/, unsigned long /*n*/); /*----- Parameter generation ----------------------------------------------*/ /* --- @bbs_gen@ --- * * - * Arguments: @bbs_param *bp@ = pointer to parameter block + * Arguments: @bbs_priv *bp@ = pointer to parameter block * @unsigned nbits@ = number of bits in the modulus * @grand *r@ = pointer to random number source * @unsigned n@ = number of attempts to make @@ -268,7 +284,7 @@ extern void bbs_rew(bbs */*b*/, bbs_param */*bp*/, unsigned long /*n*/); * Shub pseudorandom bit generator. */ -extern int bbs_gen(bbs_param */*bp*/, unsigned /*nbits*/, grand */*r*/, +extern int bbs_gen(bbs_priv */*bp*/, unsigned /*nbits*/, grand */*r*/, unsigned /*n*/, pgen_proc */*event*/, void */*ectx*/); /*----- Generic random number generator interface -------------------------*/ -- 2.11.0