Contents Up << >>

Overview

In order to use Winseed you first have to create an instance of either a slow seeder or a fast seeder. In order to do that you have to call the WS_create_instance function. This function will return a seeder instance. Calls to any other Winseed function require a properly constructed seeder. This instance can be deleted again through a call to WS_delete_instance. You should delete all your seeders when you do not need them any longer. Winseed is reentrant and has no hardcoded limit with respect to the number of seeder instances which can be created or in use.

Each seeder instance has an internal buffer which is used to temporarily store all the collected system information. The size of this buffer is called internal seed size. The internal buffer size of a seeder instance can be read with the WS_get_internal_seed_size function and changed with the WS_set_internal_seed_size function. The default value for the internal seed size of a seeder can be queried through WS_get_expected_seed_size. The internal buffer size of all seeder instances is initially set to the expected seed size. In other words the internal buffer size of all seeder instances returned by WS_create_instance is equal to the expected seed size. The most important operation which can be performed on a seeder instance is WS_get_seed. This function actually implements the randomness polling described at Introduction.