diff options
author | Andrew Tridgell <tridge@samba.org> | 2007-01-21 10:32:39 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:43:55 -0500 |
commit | cf8eef4ad88af40d2cf147686c1877cd380b452c (patch) | |
tree | cab75b7549dde223cbb1ff6a185c9f7ce7a65b87 /source4/lib/events/events.c | |
parent | c6174d5d6f9b2cfc29a1886a79ae72b5ab764c55 (diff) | |
download | samba-cf8eef4ad88af40d2cf147686c1877cd380b452c.tar.gz samba-cf8eef4ad88af40d2cf147686c1877cd380b452c.tar.bz2 samba-cf8eef4ad88af40d2cf147686c1877cd380b452c.zip |
r20930: use sigaction() instead of signal()
add support for sa_flags argument to event_add_signal(). These are
passed to sigaction(). Special handling is provided for SA_RESETHAND
(which tells the event system to remove the handler after the signal)
and SA_SIGINFO which allows the siginfo structure to be received per
signal
(This used to be commit 1bb10b6cf7d717ad21834e73a4ca4b22b5fb6f0a)
Diffstat (limited to 'source4/lib/events/events.c')
-rw-r--r-- | source4/lib/events/events.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/source4/lib/events/events.c b/source4/lib/events/events.c index 2a6da1370f..e2d5b4c397 100644 --- a/source4/lib/events/events.c +++ b/source4/lib/events/events.c @@ -241,14 +241,18 @@ struct timed_event *event_add_timed(struct event_context *ev, TALLOC_CTX *mem_ct /* add a signal event + + sa_flags are flags to sigaction(2) + return NULL on failure */ struct signal_event *event_add_signal(struct event_context *ev, TALLOC_CTX *mem_ctx, int signum, + int sa_flags, event_signal_handler_t handler, void *private_data) { - return ev->ops->add_signal(ev, mem_ctx, signum, handler, private_data); + return ev->ops->add_signal(ev, mem_ctx, signum, sa_flags, handler, private_data); } /* |