mirror of git://sourceware.org/git/glibc.git
29 lines
629 B
C
29 lines
629 B
C
#ifndef _KERNEL_SIGACTION_H
|
|
# define _KERNEL_SIGACTION_H
|
|
|
|
#ifdef SA_RESTORER
|
|
# define HAS_SA_RESTORER 1
|
|
#endif
|
|
|
|
/* This is the sigaction structure from the Linux 3.2 kernel. */
|
|
struct kernel_sigaction
|
|
{
|
|
__sighandler_t k_sa_handler;
|
|
unsigned long sa_flags;
|
|
#ifdef HAS_SA_RESTORER
|
|
void (*sa_restorer) (void);
|
|
#endif
|
|
/* glibc sigset is larger than kernel expected one, however sigaction
|
|
passes the kernel expected size on rt_sigaction syscall. */
|
|
sigset_t sa_mask;
|
|
};
|
|
|
|
#ifndef SET_SA_RESTORER
|
|
# define SET_SA_RESTORER(kact, act)
|
|
#endif
|
|
#ifndef RESET_SA_RESTORER
|
|
# define RESET_SA_RESTORER(act, kact)
|
|
#endif
|
|
|
|
#endif
|