aboutsummaryrefslogtreecommitdiff
path: root/hurd
diff options
context:
space:
mode:
Diffstat (limited to 'hurd')
-rw-r--r--hurd/hurd/signal.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/hurd/hurd/signal.h b/hurd/hurd/signal.h
index 6a188bd774..b494f4922e 100644
--- a/hurd/hurd/signal.h
+++ b/hurd/hurd/signal.h
@@ -357,5 +357,18 @@ struct hurd_signal_preempt
extern struct hurd_signal_preempt *_hurd_signal_preempt[NSIG];
extern struct mutex _hurd_signal_preempt_lock;
+/* Install a signal preempter for the given signal and range.
+ The caller is responsible for the storage for PREEMPTER. */
+extern int hurd_preempt_signals (struct hurd_signal_preempt *preempter,
+ int signo, int first_code, int last_code,
+ sighandler_t (*handler) (thread_t,
+ int, long int, int));
+
+/* Remove the signal preempter previously installed by calling
+ `hurd_preempt_signals' with PREEMPTER and SIGNO. */
+extern int hurd_unpreempt_signals (struct hurd_signal_preempt *preempter,
+ int signo);
+
+
#endif /* hurd/signal.h */