From a28ddc43bbb8445df5345007fed1782f13d38503 Mon Sep 17 00:00:00 2001 From: lloyd Date: Fri, 19 Apr 2013 16:00:40 +0000 Subject: Add a constant to make it more obvious that the clock polling is not considered as contributing entropy to a rng poll. --- src/entropy/hres_timer/hres_timer.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'src/entropy/hres_timer') diff --git a/src/entropy/hres_timer/hres_timer.cpp b/src/entropy/hres_timer/hres_timer.cpp index c6b31d996..c7a8404cf 100644 --- a/src/entropy/hres_timer/hres_timer.cpp +++ b/src/entropy/hres_timer/hres_timer.cpp @@ -19,21 +19,24 @@ namespace Botan { */ void High_Resolution_Timestamp::poll(Entropy_Accumulator& accum) { + // Don't count the timestamp as contributing any entropy + const double ESTIMATED_ENTROPY_PER_BYTE = 0.0; + #if defined(BOTAN_TARGET_OS_HAS_QUERY_PERF_COUNTER) { LARGE_INTEGER tv; ::QueryPerformanceCounter(&tv); - accum.add(tv.QuadPart, 0); + accum.add(tv.QuadPart, ESTIMATED_ENTROPY_PER_BYTE); } #endif #if defined(BOTAN_TARGET_OS_HAS_CLOCK_GETTIME) -#define CLOCK_POLL(src) \ - do { \ - struct timespec ts; \ - clock_gettime(src, &ts); \ - accum.add(&ts, sizeof(ts), 0); \ +#define CLOCK_POLL(src) \ + do { \ + struct timespec ts; \ + ::clock_gettime(src, &ts); \ + accum.add(&ts, sizeof(ts), ESTIMATED_ENTROPY_PER_BYTE); \ } while(0) #if defined(CLOCK_REALTIME) @@ -94,8 +97,7 @@ void High_Resolution_Timestamp::poll(Entropy_Accumulator& accum) #endif - // Don't count the timestamp as contributing entropy - accum.add(rtc, 0); + accum.add(rtc, ESTIMATED_ENTROPY_PER_BYTE); #endif } -- cgit v1.2.3