From f867414f4e1f8115d1c9796f8f91677673739368 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Thu, 12 Sep 2024 11:53:13 +0000 Subject: Add sysdep for CLONE_NEWPID and fork_newpid function Signed-off-by: Laurent Bercot --- src/sysdeps/tryclonenewpid.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/sysdeps/tryclonenewpid.c (limited to 'src/sysdeps') diff --git a/src/sysdeps/tryclonenewpid.c b/src/sysdeps/tryclonenewpid.c new file mode 100644 index 0000000..1a1401a --- /dev/null +++ b/src/sysdeps/tryclonenewpid.c @@ -0,0 +1,36 @@ +/* ISC license. */ + +#undef _POSIX_C_SOURCE +#undef _XOPEN_SOURCE + +#ifndef _GNU_SOURCE +#define _GNU_SOURCE +#endif + +#include +#include +#include +#include + +struct clone_args +{ + uint64_t flags ; + uint64_t pidfd ; + uint64_t child_tid ; + uint64_t parent_tid ; + uint64_t exit_signal ; + uint64_t stack ; + uint64_t stack_size ; + uint64_t tls ; + uint64_t set_tid ; + uint64_t set_tid_size ; + uint64_t cgroup ; +} ; + +int main (void) +{ + struct clone_args args = { 0 } ; + args.flags = CLONE_NEWPID ; + syscall(SYS_clone3, &args, sizeof(struct clone_args)) ; + return 0 ; +} -- cgit v1.3.1