X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=algos%2Frandpool.h;h=8560c7e7db67191ac7ad30b4f7564741f6d8aca6;hb=5f3952176a4e9a00ca8dd5ec4a6b994958f89e0a;hp=817cf39c77e554d2d5e53157adaead9952a2346b;hpb=77b88716dcd82d0910512567d4849befdbe34405;p=bertos.git diff --git a/algos/randpool.h b/algos/randpool.h old mode 100755 new mode 100644 index 817cf39c..8560c7e7 --- a/algos/randpool.h +++ b/algos/randpool.h @@ -1,7 +1,7 @@ /** * \file * * @@ -14,6 +14,33 @@ /*#* *#* $Log$ + *#* Revision 1.11 2007/02/15 13:54:26 asterix + *#* Rename randpool_getN in randpool_get. Fix bug in randpool_get. + *#* + *#* Revision 1.10 2007/02/15 13:40:42 asterix + *#* Fix bug in randpool_add and randpool_strir. + *#* + *#* Revision 1.9 2007/02/13 09:57:12 asterix + *#* Add directive #if in struct EntropyPool, and remove #else in randpool_add. + *#* + *#* Revision 1.8 2007/02/12 09:47:39 asterix + *#* Remove randpool_save. Add randpool_pool. + *#* + *#* Revision 1.6 2007/02/09 15:49:54 asterix + *#* Fix bug in randpool_stir and randpool_add. Typos. + *#* + *#* Revision 1.5 2007/02/09 09:24:38 asterix + *#* Typos. Add data_len in randpool_add and n_byte in randpool_push pototypes. + *#* + *#* Revision 1.4 2007/02/08 17:18:01 asterix + *#* Write add_data and stir function. Typos + *#* + *#* Revision 1.3 2007/02/08 14:25:56 asterix + *#* Typos. + *#* + *#* Revision 1.2 2007/02/08 11:53:03 asterix + *#* Add EntropyPool struct. Typos. + *#* *#* Revision 1.1 2007/02/08 11:13:41 asterix *#* Add function prototypes. *#* @@ -27,12 +54,28 @@ /** + * Sturct data of entropy pool. */ -void add_entropy(void *data, size_t n_bit); -size_t pool_size(void); -void get_bit(void *data, size_t n_bit); -void get_bit_n(void *data, size_t n_bit); -bool save_pool(void); -uint8_t load_pool(void); +typedef struct EntropyPool +{ + size_t entropy; ///< Actual value of entropy (byte). + size_t pos_add; ///< Number of byte idd in entropy pool. + size_t pos_get; ///< Number of byte get in entropy pool. + size_t counter; ///< Counter. + +#if CONFIG_RANDPOOL_TIMER + size_t last_counter; ///< Last timer value. +#endif + + uint8_t pool_entropy[CONFIG_SIZE_ENTROPY_POOL]; ///< Entropy pool. + +} EntropyPool; + + +void randpool_add(EntropyPool *pool, void *data, size_t entropy); +void randpool_init(EntropyPool *pool, void *_data, size_t len); +size_t randpool_size(EntropyPool *pool); +void randpool_get(EntropyPool *pool, void *data, size_t n_byte); +uint8_t *randpool_pool(EntropyPool *pool); #endif /* RANDPOOL_H */