Shadowrun: Awakened 29 September 2011 - Build 871
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions | Private Attributes | Static Private Attributes | Friends
cat::FortunaFactory Class Reference

#include <Fortuna.hpp>

Inheritance diagram for cat::FortunaFactory:

List of all members.

Public Member Functions

bool Initialize ()
void Shutdown ()

Static Public Member Functions

static FortunaOutputCreate ()

Protected Member Functions

void GetNextKey (FortunaOutput *output)
bool InitializeEntropySources ()
void PollFastEntropySources (int pool)
void PollInvariantSources (int pool)
void PollSlowEntropySources (int pool)
bool Reseed ()
void ShutdownEntropySources ()

Protected Attributes

bool _initialized
Skein Pool [ENTROPY_POOLS]
u32 reseed_counter

Static Protected Attributes

static const int ENTROPY_POOLS = 32
static Skein MasterSeed
static u32 MasterSeedRevision
static const int POOL_BITS = 512
static const int POOL_BYTES = POOL_BITS / 8
static const int POOL_QWORDS = POOL_BYTES / sizeof(u64)

Private Member Functions

 CAT_SINGLETON (FortunaFactory)
bool ThreadFunction (void *param)

Private Attributes

WaitableFlag _kill_flag
Mutex _lock

Static Private Attributes

static const int ENTROPY_THREAD_KILL_TIMEOUT = 10000

Friends

class FortunaOutput

Detailed Description

Definition at line 112 of file Fortuna.hpp.


Member Function Documentation

cat::FortunaFactory::CAT_SINGLETON ( FortunaFactory  ) [inline, private]

Definition at line 117 of file Fortuna.hpp.

References _initialized.

    {
        _initialized = false;
    }
static FortunaOutput* cat::FortunaFactory::Create ( ) [static]
void cat::FortunaFactory::GetNextKey ( FortunaOutput output) [protected]
bool cat::FortunaFactory::Initialize ( )
bool cat::FortunaFactory::InitializeEntropySources ( ) [protected]
void cat::FortunaFactory::PollFastEntropySources ( int  pool) [protected]
void cat::FortunaFactory::PollInvariantSources ( int  pool) [protected]
void cat::FortunaFactory::PollSlowEntropySources ( int  pool) [protected]
bool cat::FortunaFactory::Reseed ( ) [protected]
void cat::FortunaFactory::Shutdown ( )
void cat::FortunaFactory::ShutdownEntropySources ( ) [protected]
bool cat::FortunaFactory::ThreadFunction ( void *  param) [private, virtual]

Implements cat::Thread.


Friends And Related Function Documentation

friend class FortunaOutput [friend]

Definition at line 124 of file Fortuna.hpp.


Member Data Documentation

Definition at line 167 of file Fortuna.hpp.

Referenced by CAT_SINGLETON().

Definition at line 153 of file Fortuna.hpp.

Definition at line 122 of file Fortuna.hpp.

const int cat::FortunaFactory::ENTROPY_POOLS = 32 [static, protected]

Definition at line 159 of file Fortuna.hpp.

const int cat::FortunaFactory::ENTROPY_THREAD_KILL_TIMEOUT = 10000 [static, private]

Definition at line 151 of file Fortuna.hpp.

Definition at line 165 of file Fortuna.hpp.

Definition at line 164 of file Fortuna.hpp.

Definition at line 169 of file Fortuna.hpp.

const int cat::FortunaFactory::POOL_BITS = 512 [static, protected]

Definition at line 160 of file Fortuna.hpp.

const int cat::FortunaFactory::POOL_BYTES = POOL_BITS / 8 [static, protected]

Definition at line 161 of file Fortuna.hpp.

const int cat::FortunaFactory::POOL_QWORDS = POOL_BYTES / sizeof(u64) [static, protected]

Definition at line 162 of file Fortuna.hpp.

Definition at line 168 of file Fortuna.hpp.


The documentation for this class was generated from the following file:

Copyright © 2007-2010 by The Shadowrun: Awakened Team. This work is licensed under the GNU Lesser General Public License 3.

GNU Lesser General Public License 3 Sourceforge.net