mirror of https://github.com/openssl/openssl.git
				
				
				
			
		
			
				
	
	
		
			43 lines
		
	
	
		
			891 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			891 B
		
	
	
	
		
			C++
		
	
	
	
 | 
						|
// 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;
 | 
						|
};
 |