summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorStephan Mueller <smueller@chronox.de>2015-05-25 13:09:14 (GMT)
committerHerbert Xu <herbert@gondor.apana.org.au>2015-05-27 09:51:53 (GMT)
commit3d6a5f75d1340539dcdcec4609761fa4b836a1f2 (patch)
treed19d3ccb4f4875c20dde086b8d7abe75b807a159 /include
parent16b369a91d0dd80be214b7f7801fbc51875454cc (diff)
downloadlinux-3d6a5f75d1340539dcdcec4609761fa4b836a1f2.tar.xz
crypto: drbg - prepare for async seeding
In order to prepare for the addition of the asynchronous seeding call, the invocation of seeding the DRBG is moved out into a helper function. In addition, a block of memory is allocated during initialization time that will be used as a scratchpad for obtaining entropy. That scratchpad is used for the initial seeding operation as well as by the asynchronous seeding call. The memory must be zeroized every time the DRBG seeding call succeeds to avoid entropy data lingering in memory. CC: Andreas Steffen <andreas.steffen@strongswan.org> CC: Theodore Ts'o <tytso@mit.edu> CC: Sandy Harris <sandyinchina@gmail.com> Signed-off-by: Stephan Mueller <smueller@chronox.de> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'include')
-rw-r--r--include/crypto/drbg.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/crypto/drbg.h b/include/crypto/drbg.h
index 480d7a0..b052698 100644
--- a/include/crypto/drbg.h
+++ b/include/crypto/drbg.h
@@ -119,6 +119,8 @@ struct drbg_state {
bool fips_primed; /* Continuous test primed? */
unsigned char *prev; /* FIPS 140-2 continuous test value */
#endif
+ u8 *seed_buf; /* buffer holding the seed */
+ size_t seed_buf_len;
const struct drbg_state_ops *d_ops;
const struct drbg_core *core;
struct drbg_string test_data;