struct rng_alg — random number generator definition
struct rng_alg { int (* rng_make_random) (struct crypto_rng *tfm, u8 *rdata,unsigned int dlen); int (* rng_reset) (struct crypto_rng *tfm, u8 *seed, unsigned int slen); unsigned int seedsize; };
The function defined by this variable obtains a random number. The random number generator transform must generate the random number out of the context provided with this call.
Reset of the random number generator by clearing the entire state.
With the invocation of this function call, the random number
generator shall completely reinitialize its state. If the random
number generator requires a seed for setting up a new state,
the seed must be provided by the consumer while invoking this
function. The required size of the seed is defined with
seedsize
.
The seed size required for a random number generator initialization defined with this variable. Some random number generators like the SP800-90A DRBG does not require a seed as the seeding is implemented internally without the need of support by the consumer. In this case, the seed size is set to zero.