Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

sigvec(3)

signal(3)

sigaltstack(2)

sigstack(3)



sigstack(3)            C LIBRARY FUNCTIONS            sigstack(3)



NAME
     sigstack - set and/or get signal stack context

SYNOPSIS
     cc [ flag... ] file ... -lucb
     #include <signal.h>
     int sigstack (ss, oss)
     struct sigstack *ss, *oss;

DESCRIPTION
     sigstack allows users to define an alternate  stack,  called
     the  ``signal stack'', on which signals are to be processed.
     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 handler's execution.  A
     signal stack is specified by  a  sigstack  structure,  which
     includes the following members:
          char      *ss_sp;        /* signal stack pointer */
          int       ss_onstack;    /* current status */
     ss_sp is the initial value  to  be  assigned  to  the  stack
     pointer  when  the system switches the process to the signal
     stack.  Note that, on machines where the stack  grows  down-
     wards in memory, this is not the address of the beginning of
     the signal stack area.  ss_onstack field is zero or non-zero
     depending  on  whether the process is currently executing on
     the signal stack or not.  If ss is not a NULL pointer,  sig-
     stack  sets  the signal stack state to the value in the sig-
     stack structure pointed to by ss.  Note:  if  ss_onstack  is
     non-zero,  the system will think that the process is execut-
     ing on the signal stack.  If ss is a NULL pointer, the  sig-
     nal  stack  state  will  be unchanged.  If oss is not a NULL
     pointer, the current signal stack state  is  stored  in  the
     sigstack structure pointed to by oss.

RETURN VALUE
     Upon successful completion, a value of 0 is returned.   Oth-
     erwise,  a value of -1 is returned and errno is set to indi-
     cate 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(3), signal(3)  sigaltstack(2),  in  the  Programmer's
     Reference Manual.



             Last change: BSD Compatibility Package             1





sigstack(3)            C LIBRARY FUNCTIONS            sigstack(3)



NOTES
     Signal stacks are not ``grown'' automatically,  as  is  done
     for  the normal stack.  If the stack overflows unpredictable
     results may occur.



















































             Last change: BSD Compatibility Package             2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026