Comment by zaroth
7 years ago
The Bugzilla report seemed to indicate that AMD was returning an error code, because OpenSSL was failing to generate a key, not generating a bad key?
Why would OpenSSL fail visibly if the API was returning success but with non-random data?
If you look closely at one of the error messages, it says "too many iterations", in what looks like a random generator. I wonder if at some point it has to iterate to get a number different from another one, and it just gets an endless stream of identical values?
I can’t imagine the code is checking the returned value for uniqueness after seeing a SUCCESS code, and iterating in the hopes that becomes less true.
That would be quite something to read the comment on;
// Here we check to be sure the Earth is not flat
...
// Seeing that the Earth is indeed flat, we will iterate in this absurdity some more in the hopes it rounds out eventually
Suppose you need to generate several unique 32-bit IDs for something?