summaryrefslogtreecommitdiff
path: root/tools/testing/selftests/namespaces/wrappers.h
blob: 9741a64a5b1ddbfeb4d68cf061f880142181bfe1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// SPDX-License-Identifier: GPL-2.0

#include <linux/nsfs.h>
#include <linux/types.h>
#include <sys/syscall.h>
#include <unistd.h>

#ifndef __SELFTESTS_NAMESPACES_WRAPPERS_H__
#define __SELFTESTS_NAMESPACES_WRAPPERS_H__

#ifndef __NR_listns
	#if defined __alpha__
		#define __NR_listns 580
	#elif defined _MIPS_SIM
		#if _MIPS_SIM == _MIPS_SIM_ABI32	/* o32 */
			#define __NR_listns 4470
		#endif
		#if _MIPS_SIM == _MIPS_SIM_NABI32	/* n32 */
			#define __NR_listns 6470
		#endif
		#if _MIPS_SIM == _MIPS_SIM_ABI64	/* n64 */
			#define __NR_listns 5470
		#endif
	#else
		#define __NR_listns 470
	#endif
#endif

static inline int sys_listns(const struct ns_id_req *req, __u64 *ns_ids,
			     size_t nr_ns_ids, unsigned int flags)
{
	return syscall(__NR_listns, req, ns_ids, nr_ns_ids, flags);
}

#endif /* __SELFTESTS_NAMESPACES_WRAPPERS_H__ */