/* * Extract some number of bytes from the random pool, decreasing the * estimate of randomness as each byte is extracted. * * Do this by hashing the pool and returning a part of the hash as * randomness. Stir the hash back into the pool. Note that no * secrets going back into the pool are given away here since parts of * the hash are xored together before being returned. * * Honor the request from the caller to only return good data, any data, * etc. * * For the "high-quality" mode, we must have as much data as the caller * requests, and at some point we must have had at least the "threshold" * amount of entropy in the pool. */