kernel_sigaction.h 864 B

1234567891011121314151617181920212223242526272829303132333435
  1. #ifndef _BITS_SIGACTION_STRUCT_H
  2. #define _BITS_SIGACTION_STRUCT_H
  3. /* This is the sigaction structure from the Linux 2.1.24 kernel. */
  4. #include <sgidefs.h>
  5. #define HAVE_SA_RESTORER
  6. struct old_kernel_sigaction {
  7. unsigned int sa_flags;
  8. __sighandler_t k_sa_handler;
  9. unsigned long sa_mask;
  10. unsigned int __pad0[3]; /* reserved, keep size constant */
  11. /* Abi says here follows reserved int[2] */
  12. void (*sa_restorer)(void);
  13. #if (_MIPS_SZPTR < 64)
  14. /*
  15. * For 32 bit code we have to pad struct sigaction to get
  16. * constant size for the ABI
  17. */
  18. int pad1[1]; /* reserved */
  19. #endif
  20. };
  21. /* In uclibc, userspace struct sigaction is identical to
  22. * "new" struct kernel_sigaction (one from the Linux 2.1.68 kernel).
  23. * See sigaction.h
  24. */
  25. extern int __syscall_rt_sigaction (int, const struct sigaction *,
  26. struct sigaction *, size_t) attribute_hidden;
  27. #endif