aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/entropy
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2016-07-18 15:39:41 -0400
committerJack Lloyd <[email protected]>2016-07-18 15:39:41 -0400
commitc64d66d355c4e3daf04a79697b7f9271d087e495 (patch)
treed85c51d0f74c91263ce3191382972635c294614b /src/lib/entropy
parente33c989417b7ad9557b02936a1a814e37bf85fcd (diff)
Fix proc_walk - would always return 0 entropy collected.
Fix BeOS stat reader - was calling wrong function on the rng. Remove entropy estimate defines from build.h, no longer used.
Diffstat (limited to 'src/lib/entropy')
-rw-r--r--src/lib/entropy/beos_stats/es_beos.cpp14
-rw-r--r--src/lib/entropy/proc_walk/proc_walk.cpp3
2 files changed, 10 insertions, 7 deletions
diff --git a/src/lib/entropy/beos_stats/es_beos.cpp b/src/lib/entropy/beos_stats/es_beos.cpp
index fb9be6f86..907ca37bb 100644
--- a/src/lib/entropy/beos_stats/es_beos.cpp
+++ b/src/lib/entropy/beos_stats/es_beos.cpp
@@ -22,40 +22,40 @@ size_t BeOS_EntropySource::poll(RandomNumberGenerator& rng)
system_info info_sys;
get_system_info(&info_sys);
- rng.add_entropy(info_sys);
+ rng.add_entropy_T(info_sys);
key_info info_key; // current state of the keyboard
get_key_info(&info_key);
- rng.add_entropy(info_key);
+ rng.add_entropy_T(info_key);
team_info info_team;
int32 cookie_team = 0;
while(get_next_team_info(&cookie_team, &info_team) == B_OK)
{
- rng.add_entropy(info_team);
+ rng.add_entropy_T(info_team);
team_id id = info_team.team;
int32 cookie = 0;
thread_info info_thr;
while(get_next_thread_info(id, &cookie, &info_thr) == B_OK)
- rng.add_entropy(info_thr);
+ rng.add_entropy_T(info_thr);
cookie = 0;
image_info info_img;
while(get_next_image_info(id, &cookie, &info_img) == B_OK)
- rng.add_entropy(info_img);
+ rng.add_entropy_T(info_img);
cookie = 0;
sem_info info_sem;
while(get_next_sem_info(id, &cookie, &info_sem) == B_OK)
- rng.add_entropy(info_sem);
+ rng.add_entropy_T(info_sem);
cookie = 0;
area_info info_area;
while(get_next_area_info(id, &cookie, &info_area) == B_OK)
- rng.add_entropy(info_area);
+ rng.add_entropy_T(info_area);
bits += 32;
}
diff --git a/src/lib/entropy/proc_walk/proc_walk.cpp b/src/lib/entropy/proc_walk/proc_walk.cpp
index a0c3f830a..2664d6ad0 100644
--- a/src/lib/entropy/proc_walk/proc_walk.cpp
+++ b/src/lib/entropy/proc_walk/proc_walk.cpp
@@ -140,6 +140,9 @@ size_t ProcWalking_EntropySource::poll(RandomNumberGenerator& rng)
if(got > 0)
{
rng.add_entropy(m_buf.data(), static_cast<size_t>(got));
+
+ // Conservative estimate of 4 bits per file
+ bitS += 4;
}
if(bits > 128)