aboutsummaryrefslogtreecommitdiffstats
path: root/src/rng/auto_rng/auto_rng.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/rng/auto_rng/auto_rng.h')
-rw-r--r--src/rng/auto_rng/auto_rng.h17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/rng/auto_rng/auto_rng.h b/src/rng/auto_rng/auto_rng.h
index a15b11b13..9a93fee8f 100644
--- a/src/rng/auto_rng/auto_rng.h
+++ b/src/rng/auto_rng/auto_rng.h
@@ -9,31 +9,32 @@
#define BOTAN_AUTO_SEEDING_RNG_H__
#include <botan/rng.h>
+#include <botan/libstate.h>
#include <string>
namespace Botan {
-/**
-* RNG that attempts to seed itself
-*/
class BOTAN_DLL AutoSeeded_RNG : public RandomNumberGenerator
{
public:
void randomize(byte out[], u32bit len)
{ rng->randomize(out, len); }
- bool is_seeded() const
- { return rng->is_seeded(); }
+
+ bool is_seeded() const { return rng->is_seeded(); }
+
void clear() { rng->clear(); }
- std::string name() const
- { return "AutoSeeded(" + rng->name() + ")"; }
+
+ std::string name() const { return rng->name(); }
void reseed(u32bit poll_bits = 256) { rng->reseed(poll_bits); }
+
void add_entropy_source(EntropySource* es)
{ rng->add_entropy_source(es); }
+
void add_entropy(const byte in[], u32bit len)
{ rng->add_entropy(in, len); }
- AutoSeeded_RNG(u32bit poll_bits = 256);
+ AutoSeeded_RNG() { rng = &global_state().global_rng(); }
~AutoSeeded_RNG() { delete rng; }
private:
RandomNumberGenerator* rng;