mirror of
https://github.com/openwrt/openwrt.git
synced 2025-02-05 18:49:30 +00:00
getrandom blocks until the random pool is being initialized. Unfortunately, this code is being called early during init to create the overlay filesystem, on some devices leaving little chance for a successful random pool init. True randomness is not that important here, so fix this issue by sticking to using /dev/urandom, like in older versions of this code. Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 lines
305 B
Diff
15 lines
305 B
Diff
--- a/lib/randutils.c
|
|
+++ b/lib/randutils.c
|
|
@@ -25,6 +25,11 @@
|
|
#define THREAD_LOCAL static
|
|
#endif
|
|
|
|
+/* force /dev/urandom to avoid hanging on early boot */
|
|
+#undef HAVE_GETRANDOM
|
|
+#undef SYS_getrandom
|
|
+#undef __NR_getrandom
|
|
+
|
|
#ifdef HAVE_GETRANDOM
|
|
# include <sys/random.h>
|
|
#elif defined (__linux__)
|