Botan 2.19.2
Crypto and TLS for C&
dev_random.h
Go to the documentation of this file.
1/*
2* /dev/random EntropySource
3* (C) 1999-2009 Jack Lloyd
4*
5* Botan is released under the Simplified BSD License (see license.txt)
6*/
7
8#ifndef BOTAN_ENTROPY_SRC_DEVICE_H_
9#define BOTAN_ENTROPY_SRC_DEVICE_H_
10
11#include <botan/entropy_src.h>
12#include <vector>
13#include <string>
14
15namespace Botan {
16
17/**
18* Entropy source reading from kernel devices like /dev/random
19*/
21 {
22 public:
23 std::string name() const override { return "dev_random"; }
24
25 size_t poll(RandomNumberGenerator& rng) override;
26
27 explicit Device_EntropySource(const std::vector<std::string>& fsnames);
28
30 private:
31 std::vector<int> m_dev_fds;
32 int m_max_fd;
33 };
34
35}
36
37#endif
size_t poll(RandomNumberGenerator &rng) override
Definition: dev_random.cpp:81
std::string name() const override
Definition: dev_random.h:23
Device_EntropySource(const std::vector< std::string > &fsnames)
Definition: dev_random.cpp:24
int(* final)(unsigned char *, CTX *)
Definition: alg_id.cpp:13