diff options
author | Andreas Schneider <asn@cryptomilk.org> | 2018-07-05 08:56:33 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2018-07-05 12:12:17 +0200 |
commit | 38c53db9533a3e0ac446ee0a83dac8768d282de9 (patch) | |
tree | 954a5bcebea2915bc947b92c73dd36b5ac5ba2e2 /src | |
parent | c503bb572eee1a166ce5e631785b7d24e6319605 (diff) | |
download | libssh-38c53db9533a3e0ac446ee0a83dac8768d282de9.tar.gz libssh-38c53db9533a3e0ac446ee0a83dac8768d282de9.tar.xz libssh-38c53db9533a3e0ac446ee0a83dac8768d282de9.zip |
libcrypto: Use new RAND_priv_bytes() for strong randomness
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/libcrypto.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libcrypto.c b/src/libcrypto.c index 46570294..846e37e1 100644 --- a/src/libcrypto.c +++ b/src/libcrypto.c @@ -93,7 +93,14 @@ void ssh_reseed(void){ */ int ssh_get_random(void *where, int len, int strong) { +#ifdef HAVE_OPENSSL_RAND_PRIV_BYTES + if (strong) { + /* Returns -1 when not supported, 0 on error, 1 on success */ + return !!RAND_priv_bytes(where, len); + } +#else (void)strong; +#endif /* HAVE_RAND_PRIV_BYTES */ /* Returns -1 when not supported, 0 on error, 1 on success */ return !!RAND_bytes(where, len); |