/* source: xiosigchld.h */ /* Copyright Gerhard Rieger 2012 */ /* Published under the GNU General Public License V.2, see file COPYING */ #ifndef __xiosigchld_h #define __xiosigchld_h 1 #define NUMUNKNOWN 4 extern pid_t diedunknown[NUMUNKNOWN]; /* child died before it is registered */ #define diedunknown1 (diedunknown[0]) #define diedunknown2 (diedunknown[1]) #define diedunknown3 (diedunknown[2]) #define diedunknown4 (diedunknown[3]) extern int xiosetsigchild(xiofile_t *xfd, int (*callback)(struct single *)); extern void childdied(int signum #if HAVE_SIGACTION , siginfo_t *siginfo, void *context #endif /* HAVE_SIGACTION */ ); extern int xiosigchld_register(pid_t pid, void (*sigaction)(int, siginfo_t *, void *), void *context); extern int xiosigchld_unregister(pid_t pid); extern int xiosigchld_clearall(void); extern void xiosigaction_subaddr_ok(int signum, siginfo_t *siginfo, void *ucontext); extern void xiosigaction_child(int signum, siginfo_t *siginfo, void *ucontext); #endif /* !defined(__xiosigchld_h) */