home *** CD-ROM | disk | FTP | other *** search
-
- SIGSTACK(2) UNIX Programmer's Manual SIGSTACK(2)
-
- NNAAMMEE
- ssiiggssttaacckk - set and/or get signal stack context
-
- SSYYNNOOPPSSIISS
- ##iinncclluuddee <<ssyyss//ssiiggnnaall..hh>>
- struct sigstack {
- caddr_t ss_sp;
- int ss_onstack;
- };
-
- _i_n_t
- ssiiggssttaacckk(_c_o_n_s_t _s_t_r_u_c_t _s_i_g_s_t_a_c_k _*_s_s, _s_t_r_u_c_t _s_i_g_s_t_a_c_k _*_o_s_s)
-
- DDEESSCCRRIIPPTTIIOONN
- SSiiggssttaacckk() allows users to define an alternate stack on which signals are
- to be processed. If _s_s is nonzero, it specifies a _s_i_g_n_a_l _s_t_a_c_k on which
- to deliver signals and tells the system if the process is currently exe
- cuting on that stack. When a signal's action indicates its handler
- should execute on the signal stack (specified with a sigvec(2) call), the
- system checks to see if the process is currently executing on that stack.
- If the process is not currently executing on the signal stack, the system
- arranges a switch to the signal stack for the duration of the signal han
- dler's execution. If _o_s_s is nonzero, the current signal stack state is
- returned.
-
- NNOOTTEESS
- Signal stacks are not ``grown'' automatically, as is done for the normal
- stack. If the stack overflows unpredictable results may occur.
-
- RREETTUURRNN VVAALLUUEESS
- Upon successful completion, a value of 0 is returned. Otherwise, a value
- of 1 is returned and _e_r_r_n_o is set to indicate the error.
-
- EERRRROORRSS
- SSiiggssttaacckk() will fail and the signal stack context will remain unchanged
- if one of the following occurs.
-
- [EFAULT] Either _s_s or _o_s_s points to memory that is not a valid part of
- the process address space.
-
- SSEEEE AALLSSOO
- sigvec(2), setjmp(3)
-
- HHIISSTTOORRYY
- The ssiiggssttaacckk function call appeared in 4.2BSD.
-
- 4.2 Berkeley Distribution March 10, 1991 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-