/* -*-c-*-
*
- * $Id: mp-misc.c,v 1.1 1999/11/17 18:02:16 mdw Exp $
+ * $Id: mp-misc.c,v 1.3 2000/07/29 17:03:31 mdw Exp $
*
* Miscellaneous multiprecision support functions
*
/*----- Revision history --------------------------------------------------*
*
* $Log: mp-misc.c,v $
+ * Revision 1.3 2000/07/29 17:03:31 mdw
+ * Add support for left-to-right bitscanning, for use in modular
+ * exponentiation.
+ *
+ * Revision 1.2 2000/06/17 11:45:09 mdw
+ * Major memory management overhaul. Added arena support. Use the secure
+ * arena for secret integers. Replace and improve the MP management macros
+ * (e.g., replace MP_MODIFY by MP_DEST).
+ *
* Revision 1.1 1999/11/17 18:02:16 mdw
* New multiprecision integer arithmetic suite.
*
#include "mp.h"
-/*----- Paranoia management -----------------------------------------------*/
-
-/* --- @mp_burn@ --- *
- *
- * Arguments: @mp *m@ = pointer to a multiprecision integer
- *
- * Returns: ---
- *
- * Use: Marks the integer as `burn-after-use'. When the integer's
- * memory is deallocated, it is deleted so that traces can't
- * remain in the swap file. In theory.
- */
-
-void mp_burn(mp *m)
-{
- m->f |= MP_BURN;
-}
-
/*----- Basic manipulation ------------------------------------------------*/
/* --- @mp_shrink@ --- *
void mp_scan(mpscan *sc, const mp *m) { MP_SCAN(sc, m); }
+/* --- @mp_scan@ --- *
+ *
+ * Arguments: @mpscan *sc@ = pointer to bitscanner block
+ * @const mp *m@ = pointer to a multiprecision integer
+ *
+ * Returns: ---
+ *
+ * Use: Initializes a reverse bitscanner on a multiprecision
+ * integer.
+ */
+
+void mp_rscan(mpscan *sc, const mp *m) { MP_RSCAN(sc, m); }
+
/*----- That's all, folks -------------------------------------------------*/