nexmon – Rev 1

Subversion Repositories:
Rev:
/* 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) */