summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hurd/hurd-raise.c8
-rw-r--r--hurd/hurd/signal.h4
2 files changed, 8 insertions, 4 deletions
diff --git a/hurd/hurd-raise.c b/hurd/hurd-raise.c
index 23e5dd6974..94abedfc12 100644
--- a/hurd/hurd-raise.c
+++ b/hurd/hurd-raise.c
@@ -24,10 +24,12 @@
If SS is not NULL it is the sigstate for the calling thread;
SS->lock is held on entry and released before return. */
-void
+int
_hurd_raise_signal (struct hurd_sigstate *ss,
int signo, const struct hurd_signal_detail *detail)
{
+ error_t err;
+
if (ss == NULL)
{
ss = _hurd_self_sigstate ();
@@ -46,5 +48,7 @@ _hurd_raise_signal (struct hurd_sigstate *ss,
already marked the signal as pending for the particular thread we
want. Generating the signal with an RPC might deliver it to some
other thread. */
- __msg_sig_post (_hurd_msgport, 0, 0, __mach_task_self ());
+ err = __msg_sig_post (_hurd_msgport, 0, 0, __mach_task_self ());
+
+ return __hurd_fail(err);
}
diff --git a/hurd/hurd/signal.h b/hurd/hurd/signal.h
index d94fb3cbd4..73bf976b7d 100644
--- a/hurd/hurd/signal.h
+++ b/hurd/hurd/signal.h
@@ -280,8 +280,8 @@ extern void _hurdsig_fault_init (void);
sigstate SS points to. If SS is a null pointer, this instead affects
the calling thread. */
-extern void _hurd_raise_signal (struct hurd_sigstate *ss, int signo,
- const struct hurd_signal_detail *detail);
+extern int _hurd_raise_signal (struct hurd_sigstate *ss, int signo,
+ const struct hurd_signal_detail *detail);
/* Translate a Mach exception into a signal (machine-dependent). */