This syscall is available since Linux 3.17 and was also implemented in glibc in version 2.25 using the same interfaces.
@@ -0,0 +1,19 @@
+#ifndef _SYS_RANDOM_H
+#define _SYS_RANDOM_H
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define __NEED_size_t
+#define __NEED_ssize_t
+#include <bits/alltypes.h>
+#define GRND_NONBLOCK 0x0001
+#define GRND_RANDOM 0x0002
+ssize_t getrandom(void *, size_t, unsigned);
+}
@@ -0,0 +1,7 @@
+#include <sys/random.h>
+#include "syscall.h"
+ssize_t getrandom(void *buf, size_t buflen, unsigned flags)
+{
+ return syscall_cp(SYS_getrandom, buf, buflen, flags);