SIGPROCMASK(2) BSD Programmer's Manual SIGPROCMASK(2) NNAAMMEE ssiiggpprrooccmmaasskk - manipulate current signal mask SSYYNNOOPPSSIISS ##iinncclluuddee <<ssiiggnnaall..hh>> _i_n_t ssiiggpprrooccmmaasskk(_i_n_t _h_o_w, _c_o_n_s_t _s_i_g_s_e_t___t _*_s_e_t, _s_i_g_s_e_t___t _*_o_s_e_t); ssiiggmmaasskk(_s_i_g_n_u_m); DDEESSCCRRIIPPTTIIOONN The ssiiggpprrooccmmaasskk() function examines and/or changes the current signal mask (those signals that are blocked from delivery). Signals are blocked if they are members of the current signal mask set. If _s_e_t is not null, the action of ssiiggpprrooccmmaasskk() depends on the value of the parameter _h_o_w. The signal mask is changed as a function of the speci- fied _s_e_t and the current mask. The function is specified by _h_o_w using one of the following values from <_s_i_g_n_a_l_._h>: SIG_BLOCK The new mask is the union of the current mask and the speci- fied _s_e_t. SIG_UNBLOCK The new mask is the intersection of the current mask and the complement of the specified _s_e_t. SIG_SETMASK The current mask is replaced by the specified _s_e_t. If _o_s_e_t is not null, it is set to the previous value of the signal mask. When _s_e_t is null, the value of _h_o_w is insignificant and the mask remains unset providing a way to examine the signal mask without modification. The system quietly disallows SIGKILL or SIGSTOP to be blocked. RREETTUURRNN VVAALLUUEESS A 0 value indicated that the call succeeded. A -1 return value indicates an error occurred and _e_r_r_n_o is set to indicated the reason. EERRRROORRSS The ssiiggpprrooccmmaasskk() call will fail and the signal mask will be unchanged if one of the following occurs: [EINVAL] _h_o_w has a value other than those listed here. SSEEEE AALLSSOO kill(2), sigaction(2), sigsetops(3), sigsuspend(2) SSTTAANNDDAARRDDSS The ssiiggpprrooccmmaasskk function call is expected to conform to IEEE Std1003.1-1988 (``POSIX''). 4.4BSD June 4, 1993 1