Reference¶
Random Numbers¶
-
typedef struct rng *RNG¶
Defines a random number generator.
-
void rng_seed(RNG rng, unsigned long seed)¶
Seed the generator.
- Parameters:
rng – The random number generator to seed.
seed – The seed value.
-
unsigned long rng_next(RNG rng)¶
Get the next unsigned long random number.
- Parameters:
rng – The random number generator.
-
RNG rng_std_create(MEM_SCOPE mem)¶
Create a standard system random number generator.
Remark
This generator returns 31bit numbers.
- Parameters:
mem – A memory scope to own the memory.
- Returns:
A standard system random number generator.
Hashing¶
-
unsigned long hash_simple(const void *key, unsigned int len, unsigned long seed)¶
Hash an arbitrary block of data using a simple hash.
Remark
The seed is used to provide additional security.
- Parameters:
key – The key for the hash.
len – The length of the data in bytes.
seed – A seed for the hash.
- Returns:
A hash value.
