1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3 * Copyright (C) 2024 Jan Stancek <jstancek@redhat.com>
4 */
5
6 #ifndef GETRANDOM_VAR__
7 #define GETRANDOM_VAR__
8
9 #include "lapi/syscalls.h"
10
do_getrandom(void * buf,size_t buflen,unsigned int flags)11 static inline int do_getrandom(void *buf, size_t buflen, unsigned int flags)
12 {
13 switch (tst_variant) {
14 case 0:
15 return tst_syscall(__NR_getrandom, buf, buflen, flags);
16 case 1:
17 return getrandom(buf, buflen, flags);
18 }
19 return -1;
20 }
21
getrandom_info(void)22 static void getrandom_info(void)
23 {
24 switch (tst_variant) {
25 case 0:
26 tst_res(TINFO, "Testing SYS_getrandom syscall");
27 break;
28 case 1:
29 tst_res(TINFO, "Testing libc getrandom()");
30 break;
31 }
32 }
33
34 /* if we don't have libc getrandom() test only syscall version */
35 #ifdef HAVE_SYS_RANDOM_H
36 # define TEST_VARIANTS 2
37 #else
38 # define TEST_VARIANTS 1
39 #endif
40
41 #endif /* GETRANDOM_VAR__ */
42