diff options
author | Nick Mathewson <nickm@torproject.org> | 2018-09-18 12:40:18 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2018-09-18 12:40:18 -0400 |
commit | ea5792f333b1b92306d20e60b5e12bb0633aa740 (patch) | |
tree | 48f82aafe09b28d36c8034e800ef966d006b0960 /src/lib/crypt_ops/crypto_rand.c | |
parent | 50367d06f2ae1a06e6553a8925b5aded7f610082 (diff) | |
download | tor-ea5792f333b1b92306d20e60b5e12bb0633aa740.tar.gz tor-ea5792f333b1b92306d20e60b5e12bb0633aa740.zip |
Make crypto_strongest_rand() non-mockable
Instead, have it call a mockable function. We don't want
crypto_strongest_rand() to be mockable, since doing so creates a
type error when we call it from ed25519-donna, which we do not build
in a test mode.
Fixes bug 27728; bugfix on 0.3.5.1-alpha
Diffstat (limited to 'src/lib/crypt_ops/crypto_rand.c')
-rw-r--r-- | src/lib/crypt_ops/crypto_rand.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/lib/crypt_ops/crypto_rand.c b/src/lib/crypt_ops/crypto_rand.c index 313d829a57..cffd0610f3 100644 --- a/src/lib/crypt_ops/crypto_rand.c +++ b/src/lib/crypt_ops/crypto_rand.c @@ -335,8 +335,18 @@ crypto_strongest_rand_raw(uint8_t *out, size_t out_len) * Try to get <b>out_len</b> bytes of the strongest entropy we can generate, * storing it into <b>out</b>. **/ +void +crypto_strongest_rand(uint8_t *out, size_t out_len) +{ + crypto_strongest_rand_(out, out_len); +} + +/** + * Try to get <b>out_len</b> bytes of the strongest entropy we can generate, + * storing it into <b>out</b>. (Mockable version.) + **/ MOCK_IMPL(void, -crypto_strongest_rand,(uint8_t *out, size_t out_len)) +crypto_strongest_rand_,(uint8_t *out, size_t out_len)) { #define DLEN DIGEST512_LEN |