aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/prov/tpm/tpm.h
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2016-08-31 12:58:58 -0400
committerJack Lloyd <[email protected]>2016-08-31 12:58:58 -0400
commitdfab07a7bc00dc00f98ab86c70d536306073f34f (patch)
treed3dbb140764f259c932171d6f229d033dee685ca /src/lib/prov/tpm/tpm.h
parente29024608fca1b811aa72a7aafd930a42740b968 (diff)
parent1b9cf39063194fe91dc8e5d78f73d7251c5d16fc (diff)
Merge master into this branch, resolving conflicts with #457/#576
which recently landed on master.
Diffstat (limited to 'src/lib/prov/tpm/tpm.h')
-rw-r--r--src/lib/prov/tpm/tpm.h24
1 files changed, 9 insertions, 15 deletions
diff --git a/src/lib/prov/tpm/tpm.h b/src/lib/prov/tpm/tpm.h
index 4a9dcd3c6..b8093518c 100644
--- a/src/lib/prov/tpm/tpm.h
+++ b/src/lib/prov/tpm/tpm.h
@@ -1,3 +1,4 @@
+
/*
* TPM 1.2 interface
* (C) 2015 Jack Lloyd
@@ -71,34 +72,27 @@ class BOTAN_DLL TPM_Context
TSS_HTPM m_tpm;
};
-class BOTAN_DLL TPM_RNG : public RandomNumberGenerator
+class BOTAN_DLL TPM_RNG : public Hardware_RNG
{
public:
TPM_RNG(TPM_Context& ctx) : m_ctx(ctx) {}
+ void add_entropy(const byte in[], size_t in_len) override
+ {
+ m_ctx.stir_random(in, in_len);
+ }
+
void randomize(byte out[], size_t out_len) override
{
m_ctx.gen_random(out, out_len);
}
- void clear() override {}
-
std::string name() const override { return "TPM_RNG"; }
- size_t reseed_with_sources(Entropy_Sources&,
- size_t,
- std::chrono::milliseconds) override
- {
- // TODO: poll and stir
- return 0;
- }
+ bool is_seeded() const override { return true; }
- void add_entropy(const byte in[], size_t in_len) override
- {
- m_ctx.stir_random(in, in_len);
- }
+ void clear() override {}
- bool is_seeded() const override { return true; }
private:
TPM_Context& m_ctx;
};