diff options
author | Rob Austein <sra@hactrn.net> | 2006-06-20 17:33:26 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2006-06-20 17:33:26 +0000 |
commit | 52261db09ef9dbf5abc95baed22722c5c332f9f7 (patch) | |
tree | 05a8dc819a8d84717dfbffc287f45e6b19002984 /openssl/trunk/MacOS/Randomizer.h | |
parent | 8b319903618337c8bc643eb16454f59fabd2f28b (diff) |
Pulling OpenSSL 0.9.8b into trunk
svn path=/openssl/trunk; revision=3
Diffstat (limited to 'openssl/trunk/MacOS/Randomizer.h')
-rw-r--r-- | openssl/trunk/MacOS/Randomizer.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/openssl/trunk/MacOS/Randomizer.h b/openssl/trunk/MacOS/Randomizer.h new file mode 100644 index 00000000..565537b1 --- /dev/null +++ b/openssl/trunk/MacOS/Randomizer.h @@ -0,0 +1,43 @@ + +// Gathers unpredictable system data to be used for generating +// random bits + +#include <MacTypes.h> + +class CRandomizer +{ +public: + CRandomizer (void); + void PeriodicAction (void); + +private: + + // Private calls + + void AddTimeSinceMachineStartup (void); + void AddAbsoluteSystemStartupTime (void); + void AddAppRunningTime (void); + void AddStartupVolumeInfo (void); + void AddFiller (void); + + void AddCurrentMouse (void); + void AddNow (double millisecondUncertainty); + void AddBytes (void *data, long size, double entropy); + + void GetTimeBaseResolution (void); + unsigned long SysTimer (void); + + // System Info + bool mSupportsLargeVolumes; + bool mIsPowerPC; + bool mIs601; + + // Time info + double mTimebaseTicksPerMillisec; + unsigned long mLastPeriodicTicks; + + // Mouse info + long mSamplePeriod; + Point mLastMouse; + long mMouseStill; +}; |