case RAND_SEED:
case RAND_TIMER:
case RAND_GOODBITS:
+ case RAND_ADD:
rc = 1;
break;
default:
case RAND_GOODBITS:
rc = rand_goodbits(&g->p);
break;
+ case RAND_ADD: {
+ const void *p = va_arg(ap, const void *);
+ size_t sz = va_arg(ap, size_t);
+ unsigned goodbits = va_arg(ap, unsigned);
+ rand_add(&g->p, p, sz, goodbits);
+ } break;
default:
GRAND_BADOP;
break;
RAND_NOISESRC, /* @const rand_source *s@ */
RAND_SEED, /* @unsigned bits@ */
RAND_TIMER, /* No args */
- RAND_GOODBITS /* No args */
+ RAND_GOODBITS, /* No args */
+ RAND_ADD /* @const void *p, size_t sz,@
+ * @unsigned goodbits */
};
/* --- Default random number generator --- */