summaryrefslogtreecommitdiff
path: root/libtommath/bn_mp_rand.c
diff options
context:
space:
mode:
authorMatt Johnston <matt@ucc.asn.au>2020-10-19 22:49:19 +0800
committerMatt Johnston <matt@ucc.asn.au>2020-10-19 22:49:19 +0800
commitecac82ffbbad4f14fe58554af333a8fcfe130e87 (patch)
tree4e6bc987af0297cdd86d0df8b74bfbb84aca6ed2 /libtommath/bn_mp_rand.c
parenta158ea27f616e767dd00e529f8a740d97784cd88 (diff)
downloaddropbear-ecac82ffbbad4f14fe58554af333a8fcfe130e87.tar.gz
Use Dropbear's random source rather than libtommath's platform
Diffstat (limited to 'libtommath/bn_mp_rand.c')
-rw-r--r--libtommath/bn_mp_rand.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libtommath/bn_mp_rand.c b/libtommath/bn_mp_rand.c
index 7e9052c..110efe3 100644
--- a/libtommath/bn_mp_rand.c
+++ b/libtommath/bn_mp_rand.c
@@ -3,11 +3,13 @@
/* LibTomMath, multiple-precision integer library -- Tom St Denis */
/* SPDX-License-Identifier: Unlicense */
-mp_err(*s_mp_rand_source)(void *out, size_t size) = s_mp_rand_platform;
+/* Dropbear sets this separately, avoid platform code */
+mp_err(*s_mp_rand_source)(void *out, size_t size) = NULL;
void mp_rand_source(mp_err(*source)(void *out, size_t size))
{
- s_mp_rand_source = (source == NULL) ? s_mp_rand_platform : source;
+ /* Dropbear, don't reset to platform if source==NULL */
+ s_mp_rand_source = source;
}
mp_err mp_rand(mp_int *a, int digits)