bsd man page for sigstack

Query: sigstack

OS: bsd

Section: 2

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

SIGSTACK(2)							System Calls Manual						       SIGSTACK(2)

NAME
sigstack - set and/or get signal stack context
SYNOPSIS
#include <signal.h> struct sigstack { caddr_t ss_sp; int ss_onstack; }; sigstack(ss, oss); struct sigstack *ss, *oss;
DESCRIPTION
Sigstack allows users to define an alternate stack on which signals are to be processed. If ss is non-zero, it specifies a signal stack on which to deliver signals and tells the system if the process is currently executing 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 execut- ing 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 handler's execution. If oss is non-zero, the current signal stack state is returned.
NOTES
Signal stacks are not ``grown'' automatically, as is done for the normal stack. If the stack overflows unpredictable results may occur.
RETURN VALUE
Upon successful completion, a value of 0 is returned. Otherwise, a value of -1 is returned and errno is set to indicate the error.
ERRORS
Sigstack will fail and the signal stack context will remain unchanged if one of the following occurs. [EFAULT] Either ss or oss points to memory that is not a valid part of the process address space.
SEE ALSO
sigvec(2), setjmp(3) 4.2 Berkeley Distribution June 30, 1985 SIGSTACK(2)
Related Man Pages
sigaltstack(2) - centos
sigstack(2) - osf1
sigstack(3c) - sunos
sigstack(3ucb) - sunos
sigaltstack(2) - freebsd
Similar Topics in the Unix Linux Community
Signal Handling
finding stack location in C using program
signals related question
Getting status of a signal in process?
linux kernel mm_struct