(root)/
util-linux-2.39/
include/
pidfd-utils.h
       1  /*
       2   * No copyright is claimed.  This code is in the public domain; do with
       3   * it what you wish.
       4   */
       5  #ifndef UTIL_LINUX_PIDFD_UTILS
       6  #define UTIL_LINUX_PIDFD_UTILS
       7  
       8  #ifdef HAVE_SYS_SYSCALL_H
       9  # include <sys/syscall.h>
      10  # if defined(SYS_pidfd_send_signal) && defined(SYS_pidfd_open)
      11  #  ifdef HAVE_SYS_PIDFD_H
      12  #   include <sys/pidfd.h>
      13  #  endif
      14  #  include <sys/types.h>
      15  #  ifndef HAVE_PIDFD_SEND_SIGNAL
      16  #   include <sys/wait.h>
      17  static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
      18  				    unsigned int flags)
      19  {
      20  	return syscall(SYS_pidfd_send_signal, pidfd, sig, info, flags);
      21  }
      22  #  endif
      23  
      24  #  ifndef HAVE_PIDFD_OPEN
      25  static inline int pidfd_open(pid_t pid, unsigned int flags)
      26  {
      27  	return syscall(SYS_pidfd_open, pid, flags);
      28  }
      29  #  endif
      30  
      31  #  define UL_HAVE_PIDFD 1
      32  
      33  # endif	/* SYS_pidfd_send_signal */
      34  #endif /* HAVE_SYS_SYSCALL_H */
      35  #endif /* UTIL_LINUX_PIDFD_UTILS */