Add an internal-representation no-op function.
[u/mdw/catacomb] / noise.h
diff --git a/noise.h b/noise.h
index d335448..3777a6f 100644 (file)
--- a/noise.h
+++ b/noise.h
@@ -1,8 +1,8 @@
 /* -*-c-*-
  *
- * $Id: noise.h,v 1.2 1999/12/10 23:29:48 mdw Exp $
+ * $Id: noise.h,v 1.4 2000/06/17 12:57:47 mdw Exp $
  *
- * Acquisition of environmental noise (Unix specific)
+ * Acquisition of environmental noise (Unix-specific)
  *
  * (c) 1998 Straylight/Edgeware
  */
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: noise.h,v $
+ * Revision 1.4  2000/06/17 12:57:47  mdw
+ * New free counter noise generator, for use if /dev/random is
+ * unavailable.
+ *
+ * Revision 1.3  1999/12/22 15:57:55  mdw
+ * Label system-specific parts more clearly.
+ *
  * Revision 1.2  1999/12/10 23:29:48  mdw
  * Change header file guard names.
  *
@@ -100,7 +107,7 @@ extern int noise_devrandom(rand_pool */*r*/);
  * Use:                Sets the user and group ids to be used by @noise_filter@
  *             when running child processes.  This is useful to avoid
  *             giving shell commands (even carefully written ones) undue
- *             privileges.
+ *             privileges.  This interface is Unix-specific.
  */
 
 extern void noise_setid(uid_t /*uid*/, gid_t /*gid*/);
@@ -124,10 +131,38 @@ extern void noise_setid(uid_t /*uid*/, gid_t /*gid*/);
  *             fails to complete within a short time period, it is killed.
  *             Paranoid use of close-on-exec flags for file descriptors is
  *             recommended.
+ *
+ *             This interface is Unix-specific.
  */
 
 extern int noise_filter(rand_pool */*r*/, int /*good*/, const char */*c*/);
 
+/* --- @noise_freewheel@ --- *
+ *
+ * Arguments:  @rand_pool *r@ = pointer to a randomness pool
+ *
+ * Returns:    Nonzero if some randomness was contributed.
+ *
+ * Use:                Runs a free counter for a short while as a desparate attempt
+ *             to get randomness from somewhere.  This is actually quite
+ *             effective.
+ */
+
+int noise_freewheel(rand_pool */*r*/);
+
+/* --- @noise_enquire@ --- *
+ *
+ * Arguments:  @rand_pool *r@ = pointer to a randomness pool
+ *
+ * Returns:    Nonzero if some randomness was contributed.
+ *
+ * Use:                Runs some shell commands to enquire about the prevailing
+ *             environment.  This can gather quite a lot of low-quality
+ *             entropy.
+ */
+
+extern int noise_enquire(rand_pool */*r*/);
+
 /* --- @noise_acquire@ --- *
  *
  * Arguments:  @rand_pool *r@ = pointer to a randomness pool