summaryrefslogtreecommitdiff
path: root/lib/global.c
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@redhat.com>2016-10-14 14:16:51 +0200
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2016-11-04 02:54:06 +0100
commite4c739fe0b9e568333bf43358fbc3db6b96fe1a1 (patch)
tree5846882d8a2ac908e9587a484274e1c4154e3811 /lib/global.c
parentfea6c3ca8f869752f4f79f724fbb8736e961fd88 (diff)
downloadgnutls-e4c739fe0b9e568333bf43358fbc3db6b96fe1a1.tar.gz
rng: split initialization in preinit and init
This makes gnutls to initialize its random generator on the first call to gnutls_rnd(). That prevents blocking due to getrandom() on a constructor; that change allows to use gnutls-linked applications even in early boot in systems where getrandom() blocks waiting for entropy.
Diffstat (limited to 'lib/global.c')
-rw-r--r--lib/global.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/global.c b/lib/global.c
index 0b57f3d6d7..d31d5bcae9 100644
--- a/lib/global.c
+++ b/lib/global.c
@@ -303,7 +303,7 @@ static int _gnutls_global_init(unsigned constructor)
}
/* Initialize the random generator */
- ret = _gnutls_rnd_init();
+ ret = _gnutls_rnd_preinit();
if (ret < 0) {
gnutls_assert();
goto out;