diff options
Diffstat (limited to 'botan/src/entropy/unix_procs/es_unix.h')
-rw-r--r-- | botan/src/entropy/unix_procs/es_unix.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/botan/src/entropy/unix_procs/es_unix.h b/botan/src/entropy/unix_procs/es_unix.h new file mode 100644 index 0000000..1f8abb7 --- /dev/null +++ b/botan/src/entropy/unix_procs/es_unix.h @@ -0,0 +1,39 @@ +/* +* Unix EntropySource +* (C) 1999-2009 Jack Lloyd +* +* Distributed under the terms of the Botan license +*/ + +#ifndef BOTAN_ENTROPY_SRC_UNIX_H__ +#define BOTAN_ENTROPY_SRC_UNIX_H__ + +#include <botan/entropy_src.h> +#include <botan/unix_cmd.h> +#include <vector> + +namespace Botan { + +/** +* Unix Entropy Source +*/ +class BOTAN_DLL Unix_EntropySource : public EntropySource + { + public: + std::string name() const { return "Unix Entropy Source"; } + + void poll(Entropy_Accumulator& accum); + + void add_sources(const Unix_Program[], u32bit); + Unix_EntropySource(const std::vector<std::string>& path); + private: + static void add_default_sources(std::vector<Unix_Program>&); + void fast_poll(Entropy_Accumulator& accum); + + const std::vector<std::string> PATH; + std::vector<Unix_Program> sources; + }; + +} + +#endif |