#ifndef _ADAPT_SIGNAL_H #define _ADAPT_SIGNAL_H #ifdef __cplusplus extern "C" { #endif #include #include #define siginfo_t __siginfo_t_discard #include #undef siginfo_t #include_next #define CLD_EXITED 1 #define CLD_KILLED 2 #define CLD_DUMPED 3 #define CLD_TRAPPED 4 #define CLD_STOPPED 5 #define CLD_CONTINUED 6 typedef struct { int si_signo, si_errno, si_code; union { char __pad[128 - 2*sizeof(int) - sizeof(long)]; struct { union { struct { pid_t si_pid; uid_t si_uid; } __piduid; struct { int si_timerid; int si_overrun; } __timer; } __first; union { union sigval si_value; struct { int si_status; clock_t si_utime, si_stime; } __sigchld; } __second; } __si_common; } __si_fields; } siginfo_t; #define si_pid __si_fields.__si_common.__first.__piduid.si_pid #define si_uid __si_fields.__si_common.__first.__piduid.si_uid #define si_status __si_fields.__si_common.__second.__sigchld.si_status #define si_utime __si_fields.__si_common.__second.__sigchld.si_utime #define si_stime __si_fields.__si_common.__second.__sigchld.si_stime #define si_value __si_fields.__si_common.__second.si_value #define si_timerid __si_fields.__si_common.__first.__timer.si_timerid #define si_overrun __si_fields.__si_common.__first.__timer.si_overrun #define _NSIG 65 #define SIGRTMIN 35 #define SIGRTMAX (_NSIG - 1) #ifdef __cplusplus } #endif #endif