|
|
1.1.1.6 ! root 1: /* Legal Notice: The source code contained in this file has been derived from ! 2: the source code of Encryption for the Masses 2.02a, which is Copyright (c) ! 3: 1998-99 Paul Le Roux and which is covered by the 'License Agreement for ! 4: Encryption for the Masses'. Modifications and additions to that source code ! 5: contained in this file are Copyright (c) 2004-2005 TrueCrypt Foundation and ! 6: Copyright (c) 2004 TrueCrypt Team, and are covered by TrueCrypt License 2.0 ! 7: the full text of which is contained in the file License.txt included in ! 8: TrueCrypt binary and source code distribution archives. */ 1.1 root 9: 1.1.1.6 ! root 10: #include "Crypto.h" 1.1 root 11: 1.1.1.6 ! root 12: /* RNG defines & pool pointers */ ! 13: #define RNG_POOL_SIZE 320 // Must be divisible by the size of the output of each of the implemented hash functions. (in bytes) ! 14: #if RNG_POOL_SIZE % SHA1_DIGESTSIZE || RNG_POOL_SIZE % WHIRLPOOL_DIGESTSIZE || RNG_POOL_SIZE % RIPEMD160_DIGESTSIZE ! 15: #error RNG_POOL_SIZE must be divisible by the size of the output of each of the implemented hash functions. ! 16: #endif ! 17: ! 18: #define RANDOMPOOL_ALLOCSIZE RNG_POOL_SIZE ! 19: ! 20: extern BOOL volatile bFastPollEnabled; ! 21: extern BOOL volatile bRandmixEnabled; ! 22: ! 23: _inline void _RandaddInt32 ( unsigned __int32 x ); 1.1 root 24: int Randinit ( void ); 25: void Randfree ( void ); 1.1.1.6 ! root 26: void RandSetHashFunction ( int hash_algo_id ); ! 27: int RandGetHashFunction (void); 1.1 root 28: void Randmix ( void ); 29: void RandaddBuf ( void *buf , int len ); 1.1.1.4 root 30: void RandpeekBytes ( unsigned char *buf , int len ); 31: void RandgetBytes ( unsigned char *buf , int len, BOOL forceSlowPoll ); 1.1 root 32: LRESULT CALLBACK MouseProc ( int nCode , WPARAM wParam , LPARAM lParam ); 33: LRESULT CALLBACK KeyboardProc ( int nCode , WPARAM wParam , LPARAM lParam ); 34: void ThreadSafeThreadFunction ( void *dummy ); 35: void SlowPollWinNT ( void ); 36: void FastPoll ( void );
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.