2 Copyright © 1995-2017, The AROS Development Team. All rights reserved.
5 Desc: Examine and/or modify the signals of a task.
11 #include <exec/execbase.h>
12 #include <aros/libcall.h>
13 #include <proto/exec.h>
15 #include "exec_intern.h"
16 #if defined(__AROSEXEC_SMP__)
20 /*****************************************************************************
24 AROS_LH2(ULONG
, SetSignal
,
27 AROS_LHA(ULONG
, newSignals
, D0
),
28 AROS_LHA(ULONG
, signalSet
, D1
),
31 struct ExecBase
*, SysBase
, 51, Exec
)
34 Change or read the set of signals sent to the current task.
37 newSignals - New values for the signals.
38 signalSet - Mask of signals affected by 'newSignals'.
50 AllocSignal(), FreeSignal(), Wait(), Signal(), SetExcept()
54 ******************************************************************************/
58 struct Task
*thisTask
= GET_THIS_TASK
;
64 /* Protect the signal mask against access by other tasks. */
68 sig
= &thisTask
->tc_SigRecvd
;
70 /* Change only the bits in 'mask' */
72 *sig
= (old
& ~signalSet
) | (newSignals
& signalSet
);