Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

sigvec(2)

setjmp(3)



SIGSTACK(2-BSD)     RISC/os Reference Manual      SIGSTACK(2-BSD)



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 speci-
     fies 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
     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. 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.  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(2), setjmp(3)







                        Printed 11/19/92                   Page 1



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