diff options
Diffstat (limited to 'src/shared/missing.h')
-rw-r--r-- | src/shared/missing.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/shared/missing.h b/src/shared/missing.h index 572e17117a..50f0d56c4a 100644 --- a/src/shared/missing.h +++ b/src/shared/missing.h @@ -42,6 +42,21 @@ /* If RLIMIT_RTTIME is not defined, then we cannot use RLIMIT_NLIMITS as is */ #define _RLIMIT_MAX (RLIMIT_RTTIME+1 > RLIMIT_NLIMITS ? RLIMIT_RTTIME+1 : RLIMIT_NLIMITS) +#ifndef __NR_getrandom +# if defined __x86_64__ +# define __NR_getrandom 278 +# else +# warning "__NR_getrandom unknown for your architecture" +# define __NR_getrandom 0xffffffff +# endif +#endif + +#if !HAVE_DECL_GETRANDOM +static inline int getrandom(void *buffer, size_t count, unsigned flags) { + return syscall(__NR_getrandom, buffer, count, flags); +} +#endif + #ifndef BTRFS_IOCTL_MAGIC #define BTRFS_IOCTL_MAGIC 0x94 #endif |