That's information is not a secret.
> Some functions in rnd have a timespec; make sure to zero it
> as already done with other buffers. Also do buf in
> dequeue_randomness().
>
> - Michael
>
>
> Index: src/sys/dev/rnd.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/rnd.c,v
> retrieving revision 1.191
> diff -u -p -u -r1.191 rnd.c
> --- src/sys/dev/rnd.c 8 Dec 2016 05:32:49 -0000 1.191
> +++ src/sys/dev/rnd.c 13 Dec 2016 04:49:24 -0000
> @@ -312,6 +312,7 @@ enqueue_randomness(u_int state, u_int va
> timeout_add(&rnd_timeout, 1);
>
> mtx_leave(&entropylock);
> + explicit_bzero(&ts, sizeof(ts));
> }
>
> /*
> @@ -388,6 +389,7 @@ dequeue_randomness(void *v)
> mtx_enter(&entropylock);
> }
> mtx_leave(&entropylock);
> + explicit_bzero(buf, sizeof(buf));
> }
>
> /*
> @@ -458,6 +460,7 @@ suspend_randomness(void)
> dequeue_randomness(NULL);
> rs_count = 0;
> arc4random_buf(entropy_pool, sizeof(entropy_pool));
> + explicit_bzero(&ts, sizeof(ts));
> }
>
> void
> @@ -473,6 +476,7 @@ resume_randomness(char *buf, size_t bufl
>
> dequeue_randomness(NULL);
> rs_count = 0;
> + explicit_bzero(&ts, sizeof(ts));
> }
>
> static inline void _rs_rekey(u_char *dat, size_t datlen);
> @@ -523,6 +527,7 @@ _rs_stir(int do_lock)
> mtx_leave(&rndlock);
>
> explicit_bzero(buf, sizeof(buf));
> + explicit_bzero(&ts, sizeof(ts));
> }
>
> static inline void
>