]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
include/pidfd-utils: add namespaces ioctls
authorKarel Zak <kzak@redhat.com>
Mon, 21 Oct 2024 11:08:36 +0000 (13:08 +0200)
committerKarel Zak <kzak@redhat.com>
Mon, 21 Oct 2024 12:36:50 +0000 (14:36 +0200)
Signed-off-by: Karel Zak <kzak@redhat.com>
include/pidfd-utils.h

index d43bad26fe26214444348822c58087ada97e3426..5bd59694a5ba6a788a334ad6bc53a4bc33028cc4 100644 (file)
@@ -8,14 +8,35 @@
 #include <sys/types.h>
 #include <sys/wait.h>
 
+#ifdef HAVE_SYS_PIDFD_H
+# include <sys/pidfd.h>
+#endif
+
+/*
+ * pidfd ioctls
+ *
+ * All added by commit to kernel 6.11, commit 5b08bd408534bfb3a7cf5778da5b27d4e4fffe12.
+ */
+#ifndef PIDFS_IOCTL_MAGIC
+# define PIDFS_IOCTL_MAGIC 0xFF
+# define PIDFD_GET_CGROUP_NAMESPACE            _IO(PIDFS_IOCTL_MAGIC, 1)
+# define PIDFD_GET_IPC_NAMESPACE               _IO(PIDFS_IOCTL_MAGIC, 2)
+# define PIDFD_GET_MNT_NAMESPACE               _IO(PIDFS_IOCTL_MAGIC, 3)
+# define PIDFD_GET_NET_NAMESPACE               _IO(PIDFS_IOCTL_MAGIC, 4)
+# define PIDFD_GET_PID_NAMESPACE               _IO(PIDFS_IOCTL_MAGIC, 5)
+# define PIDFD_GET_PID_FOR_CHILDREN_NAMESPACE  _IO(PIDFS_IOCTL_MAGIC, 6)
+# define PIDFD_GET_TIME_NAMESPACE              _IO(PIDFS_IOCTL_MAGIC, 7)
+# define PIDFD_GET_TIME_FOR_CHILDREN_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 8)
+# define PIDFD_GET_USER_NAMESPACE              _IO(PIDFS_IOCTL_MAGIC, 9)
+# define PIDFD_GET_UTS_NAMESPACE               _IO(PIDFS_IOCTL_MAGIC, 10)
+#endif
+
+
 #ifdef HAVE_SYS_SYSCALL_H
 # include <sys/syscall.h>
 # include <unistd.h>
 
 # if defined(SYS_pidfd_send_signal) && defined(SYS_pidfd_open)
-#  ifdef HAVE_SYS_PIDFD_H
-#   include <sys/pidfd.h>
-#  endif
 #  ifndef HAVE_PIDFD_SEND_SIGNAL
 static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
                                    unsigned int flags)