From: Thomas Devoogdt <[email protected]> getrandom() was introduced in version 3.17 of the Linux kernel. Support was added to glibc in version 2.25.
https://man7.org/linux/man-pages/man2/getrandom.2.html read_new_seed will anyway fallback to /dev/{u}random if (ret != len) Signed-off-by: Thomas Devoogdt <[email protected]> --- v2: - check if __GLIBC_PREREQ is defined - assume by default that we have <sys/random.h> --- miscutils/seedrng.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/miscutils/seedrng.c b/miscutils/seedrng.c index 967741dc7..91c93bdad 100644 --- a/miscutils/seedrng.c +++ b/miscutils/seedrng.c @@ -42,9 +42,21 @@ #include "libbb.h" #include <linux/random.h> -#include <sys/random.h> #include <sys/file.h> +#define HAVE_SYS_RANDOM 1 +#if defined(__GLIBC_PREREQ) +#if !__GLIBC_PREREQ(2, 25) +#undef HAVE_SYS_RANDOM +#endif +#endif + +#if defined(HAVE_SYS_RANDOM) +#include <sys/random.h> +#else +#define getrandom(buf, len, flags) (-1) +#endif + #ifndef GRND_INSECURE #define GRND_INSECURE 0x0004 /* Apparently some headers don't ship with this yet. */ #endif -- 2.39.2 _______________________________________________ busybox mailing list [email protected] http://lists.busybox.net/mailman/listinfo/busybox
