18 #ifndef _RTEMS_POSIX_PSIGNALIMPL_H 19 #define _RTEMS_POSIX_PSIGNALIMPL_H 39 #define _States_Is_interruptible_signal( _states ) \ 41 (STATES_WAITING_FOR_SIGNAL|STATES_INTERRUPTIBLE_BY_SIGNAL)) == \ 42 (STATES_WAITING_FOR_SIGNAL|STATES_INTERRUPTIBLE_BY_SIGNAL)) 44 #define SIGACTION_TERMINATE \ 45 { 0, SIGNAL_ALL_MASK, {_POSIX_signals_Abnormal_termination_handler} } 46 #define SIGACTION_IGNORE \ 47 { 0, SIGNAL_ALL_MASK, {SIG_IGN} } 48 #define SIGACTION_STOP \ 49 { 0, SIGNAL_ALL_MASK, {_POSIX_signals_Stop_handler} } 50 #define SIGACTION_CONTINUE \ 51 { 0, SIGNAL_ALL_MASK, {_POSIX_signals_Continue_handler} } 53 #define SIG_ARRAY_MAX (SIGRTMAX + 1) 59 extern sigset_t _POSIX_signals_Pending;
61 extern const struct sigaction _POSIX_signals_Default_vectors[ SIG_ARRAY_MAX ];
63 extern struct sigaction _POSIX_signals_Vectors[ SIG_ARRAY_MAX ];
80 #define _POSIX_signals_Acquire( lock_context ) \ 81 _Thread_queue_Acquire( &_POSIX_signals_Wait_queue, lock_context ) 83 #define _POSIX_signals_Release( lock_context ) \ 84 _Thread_queue_Release( &_POSIX_signals_Wait_queue, lock_context ) 86 void _POSIX_signals_Action_handler(
120 bool do_signals_acquire_release
126 const union sigval *value
136 void _POSIX_signals_Clear_process_signals(
144 #define _POSIX_signals_Stop_handler NULL 145 #define _POSIX_signals_Continue_handler NULL 147 void _POSIX_signals_Abnormal_termination_handler(
int signo );
bool _POSIX_signals_Unblock_thread(Thread_Control *the_thread, int signo, siginfo_t *info)
Unlock POSIX signals thread.
Definition: psignalunblockthread.c:49
This is used to manage a chain.
Definition: chain.h:83
POSIX Threads Private Support.
This is the structure used to manage sets of tasks which are blocked waiting to acquire a resource...
Definition: threadq.h:171
void _POSIX_signals_Manager_Initialization(void)
POSIX signals manager initialization.
Definition: psignal.c:170
Internal Information about POSIX Signals.
This include file defines the per CPU information required by RTEMS.
bool _POSIX_signals_Check_signal(POSIX_API_Control *api, int signo, bool is_global)
Check POSIX signal.
Definition: psignalchecksignal.c:40
uint32_t ISR_Level
The following type defines the control block used to manage the interrupt level portion of the status...
Definition: isrlevel.h:42
This structure defines the Thread Control Block (TCB).
Definition: thread.h:671
Per CPU Core Structure.
Definition: percpu.h:233
Thread action.
Definition: thread.h:480
Constants and Structures Associated with the Manipulation of Objects.
POSIX Signal Sets Management Helper.
This defines the POSIX API support structure associated with each thread in a system with POSIX confi...
Definition: threadsup.h:44
bool _POSIX_signals_Clear_signals(POSIX_API_Control *api, int signo, siginfo_t *info, bool is_global, bool check_blocked, bool do_signals_acquire_release)
Clear POSIX signals.
Definition: psignalclearsignals.c:40
void _POSIX_signals_Set_process_signals(sigset_t mask)
Set POSIX process signals.
Definition: psignalsetprocesssignals.c:36