From cdd57fd49c847250ce5d8e3cc39b7d882a529fc3 Mon Sep 17 00:00:00 2001 From: weidai Date: Fri, 4 May 2007 15:04:58 +0000 Subject: reduce risk of random number reuse after VM rollback git-svn-id: svn://svn.code.sf.net/p/cryptopp/code/trunk/c5@328 57ff6487-cd31-0410-9ec3-f628ee90f5f0 --- hrtimer.h | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'hrtimer.h') diff --git a/hrtimer.h b/hrtimer.h index 03c4310..6bb8301 100644 --- a/hrtimer.h +++ b/hrtimer.h @@ -5,14 +5,19 @@ NAMESPACE_BEGIN(CryptoPP) -#ifdef WORD64_AVAILABLE - typedef word64 TimerWord; +#ifdef HIGHRES_TIMER_AVAILABLE + #ifdef WORD64_AVAILABLE + typedef word64 TimerWord; + #else + typedef word32 TimerWord; + #endif #else - typedef word32 TimerWord; + #include + typedef clock_t TimerWord; #endif //! _ -class TimerBase +class CRYPTOPP_DLL CRYPTOPP_NO_VTABLE TimerBase { public: enum Unit {SECONDS = 0, MILLISECONDS, MICROSECONDS, NANOSECONDS}; @@ -44,10 +49,8 @@ public: TimerWord TicksPerSecond(); }; -#ifdef HIGHRES_TIMER_AVAILABLE - //! high resolution timer -class Timer : public TimerBase +class CRYPTOPP_DLL Timer : public TimerBase { public: Timer(Unit unit = TimerBase::SECONDS, bool stuckAtZero = false) : TimerBase(unit, stuckAtZero) {} @@ -55,8 +58,6 @@ public: TimerWord TicksPerSecond(); }; -#endif // HIGHRES_TIMER_AVAILABLE - NAMESPACE_END #endif -- cgit v1.2.1