+/*----- Generic random number generator interface -------------------------*/
+
+/* --- Miscellaneous operations --- */
+
+enum {
+ RAND_GATE = GRAND_SPECIFIC('R'), /* No args */
+ RAND_STRETCH, /* No args */
+ RAND_KEY, /* @const void *k, size_t sz@ */
+ RAND_NOISESRC, /* @const rand_source *s@ */
+ RAND_SEED, /* @unsigned bits@ */
+ RAND_TIMER, /* No args */
+ RAND_GOODBITS, /* No args */
+ RAND_ADD /* @const void *p, size_t sz,@
+ * @unsigned goodbits */
+};
+
+/* --- Default random number generator --- */
+
+extern grand rand_global;
+
+/* --- @rand_create@ --- *
+ *
+ * Arguments: ---
+ *
+ * Returns: Pointer to a generic generator.
+ *
+ * Use: Constructs a generic generator interface over a Catacomb
+ * entropy pool generator.
+ */
+
+extern grand *rand_create(void);
+